Offcanvas

������������������ ������������

좋은 코드를 작성하고 있다는 징후 11가지

빌 소러는 윤리적 관점에서 스스로 부끄러움을 느낀 코드에 대한 좋은 글을 미디엄(Medium)에 올린 적이 있다. 그러나 기술적인 측면에서도 소프트웨어를 부끄러워해야 이유는 많다. 부끄러워하지 않을 소프트웨어를 나타내는 11가지 단어를 살펴보자. 사용하는 언어 또는 기술 스택이 무엇이든 코드를 다음 단어로 설명할 수 있다면 좋은 코드일 가능성이 높다. 자신의 코드에 몇 개나 적용되는지 확인해 보라. 1. 디버그 가능(Debuggable) 대부분의 현대 런타임에서는 일종의 디버거를 연결할 수 있다. Node.js조차 비주얼 스튜디오로 디버그할 수 있다. 언젠가 무슨 일이 벌어지는지 알아내야 할 때 디버거를 연결해야 한다는 생각을 갖고 코드를 써야 한다. 그 의미를 정확히 설명하기는 어렵지만 이렇게 하면 때로는 데이터의 구조를 설계하는 데 영향을 미치기도 한다. 구조를 파나갈 필요가 없도록 더 많은 임시 변수를 사용할 수도 있다. 다행히 대부분은 결과적으로 좋은 습관이다. 가장 좋은 시작 방법은 문제가 없을 때 디버거 사용을 연습하는 것이다. 단계별로 진행하면서 할당을 살펴보고, 잘못된 값이 있을 경우 어떻게 할지 생각해 보라. 2. 로그 가능(Loggable) 런타임에 연결해서 코드를 단계별로 진행하기 위한 현대적 디버거가 있다 해도 세상은 그렇게 돌아가지 않는다. 즉, 코드가 실행되는 환경은 다양하다. 서버리스일 수도 있고 멀티스레드 환경이거나 분산 환경 또는 어딘가의 클라우드에서 실행되는 경우도 있을 것이다. 이러한 환경에서 코드는 개발자가 컴퓨터에서 실행할 때와 다르게 동작할지도 모른다. 따라서 로그가 필요하다. 그 말은 로깅 프레임워크가 필요하다는 의미다. 코드를 쓰고 로그를 읽을 수 있도록, 또는 최소한 일종의 로그 리더에서 소화가 가능하도록 로깅을 설정해야 한다. 소프트웨어에 로그 기능을 넣어야 한다. 이 부분을 못할 경우 프로덕션 배포에서 프로덕션 문제를 디버그하기 위해 로깅 코드를 배포하는 상...

코드 문서화 디버깅 로그 프로그래머블 네트워크 멱등적

2018.04.17

빌 소러는 윤리적 관점에서 스스로 부끄러움을 느낀 코드에 대한 좋은 글을 미디엄(Medium)에 올린 적이 있다. 그러나 기술적인 측면에서도 소프트웨어를 부끄러워해야 이유는 많다. 부끄러워하지 않을 소프트웨어를 나타내는 11가지 단어를 살펴보자. 사용하는 언어 또는 기술 스택이 무엇이든 코드를 다음 단어로 설명할 수 있다면 좋은 코드일 가능성이 높다. 자신의 코드에 몇 개나 적용되는지 확인해 보라. 1. 디버그 가능(Debuggable) 대부분의 현대 런타임에서는 일종의 디버거를 연결할 수 있다. Node.js조차 비주얼 스튜디오로 디버그할 수 있다. 언젠가 무슨 일이 벌어지는지 알아내야 할 때 디버거를 연결해야 한다는 생각을 갖고 코드를 써야 한다. 그 의미를 정확히 설명하기는 어렵지만 이렇게 하면 때로는 데이터의 구조를 설계하는 데 영향을 미치기도 한다. 구조를 파나갈 필요가 없도록 더 많은 임시 변수를 사용할 수도 있다. 다행히 대부분은 결과적으로 좋은 습관이다. 가장 좋은 시작 방법은 문제가 없을 때 디버거 사용을 연습하는 것이다. 단계별로 진행하면서 할당을 살펴보고, 잘못된 값이 있을 경우 어떻게 할지 생각해 보라. 2. 로그 가능(Loggable) 런타임에 연결해서 코드를 단계별로 진행하기 위한 현대적 디버거가 있다 해도 세상은 그렇게 돌아가지 않는다. 즉, 코드가 실행되는 환경은 다양하다. 서버리스일 수도 있고 멀티스레드 환경이거나 분산 환경 또는 어딘가의 클라우드에서 실행되는 경우도 있을 것이다. 이러한 환경에서 코드는 개발자가 컴퓨터에서 실행할 때와 다르게 동작할지도 모른다. 따라서 로그가 필요하다. 그 말은 로깅 프레임워크가 필요하다는 의미다. 코드를 쓰고 로그를 읽을 수 있도록, 또는 최소한 일종의 로그 리더에서 소화가 가능하도록 로깅을 설정해야 한다. 소프트웨어에 로그 기능을 넣어야 한다. 이 부분을 못할 경우 프로덕션 배포에서 프로덕션 문제를 디버그하기 위해 로깅 코드를 배포하는 상...

2018.04.17

시스코의 신규 '프로그래머블 스위치'가 가지는 의미

CNN은 2017년 새해를 맞이하면서 로열 캐리비안 유람선에서 생방송을 하고자 했다. 그러나 확인해야 할 과제가 하나 있었다. 로열 캐리비안의 CIO 마이클 기레시에 따르면 "바다에서 실시간 스트리밍할 수 있는지"였다. 대답은 '예'였고, 방송은 문제 없이 송출됐다. 가능했던 이유 중 하나는 시스코 네트워크 장비가 동영상 트래픽의 우선 순위를 높게 프로그래밍할 수 있기 때문이었다. 로열 캐리비안은 시스코의 프로그래머블 인프라를 초기 도입한 기업 중 하나다. 기레시는 "네트워크를 소프트웨어 계층으로 볼 수 있게 되면 큰 이점이 발생한다. 제품 개발과 경험 구현, 서비스 전달을 인프라스트럭처와 통합할 수 있게 된다"라고 말했다. 시스코의 최신 카탈리스트 9000 시리즈 스위치(9300, 9400, 9500 등)은 회사의 라인업 중 가장 진보된 프로그래밍 기능을 갖춘 제품으로, 시스코의 인텐트 기반 네트워킹 라인업 초기 제품에 해당한다. 이들 신형 스위치에는 커스텀 ASIC가 포함돼 있다. 시스코 넥서스 제품 관리자 사친 굽타에 따르면 이는 현재는 물론 미래의 프로토콜까지 지원할 수 있게 해주는 요소다. 그는 "IoT, 보안, 여타 앞으로의 여러 활용 사례에 대한 보장"이라고 표현했다. 기레시 CIO는 로열 캐리비안과 같은 기업의 경우 이를 통해 인프라스트럭처를 소프트웨어 개발 주기에 녹여넣을 수 있게 됐다고 말했다. 이번주 라스베이거스에서 열리고 있는 시스코 라이브 행사에서는 여러 시스코의 임원과 고객이 프로그래밍 가능한 네트워크의 특징과 혜택, 최종 사용자에게 미치는 의미에 대해 강조하고 있다. 시스코의 데브넷 센트럴 CTO 수시 위는 "예전에는 앱과 네트워크가 분리돼 존재했다. 그러나 네트워크를 프로그래밍할 수 있는 거대한 변화가 나타났다. 이제는 위에서 아래로, ASIC 자체로의 모든 경로로, 박스를 관통해 DNA 센터로 프로그래밍이 가능하다"...

시스코 프로그래머블 스위치 프로그래머블 네트워크

2017.06.28

CNN은 2017년 새해를 맞이하면서 로열 캐리비안 유람선에서 생방송을 하고자 했다. 그러나 확인해야 할 과제가 하나 있었다. 로열 캐리비안의 CIO 마이클 기레시에 따르면 "바다에서 실시간 스트리밍할 수 있는지"였다. 대답은 '예'였고, 방송은 문제 없이 송출됐다. 가능했던 이유 중 하나는 시스코 네트워크 장비가 동영상 트래픽의 우선 순위를 높게 프로그래밍할 수 있기 때문이었다. 로열 캐리비안은 시스코의 프로그래머블 인프라를 초기 도입한 기업 중 하나다. 기레시는 "네트워크를 소프트웨어 계층으로 볼 수 있게 되면 큰 이점이 발생한다. 제품 개발과 경험 구현, 서비스 전달을 인프라스트럭처와 통합할 수 있게 된다"라고 말했다. 시스코의 최신 카탈리스트 9000 시리즈 스위치(9300, 9400, 9500 등)은 회사의 라인업 중 가장 진보된 프로그래밍 기능을 갖춘 제품으로, 시스코의 인텐트 기반 네트워킹 라인업 초기 제품에 해당한다. 이들 신형 스위치에는 커스텀 ASIC가 포함돼 있다. 시스코 넥서스 제품 관리자 사친 굽타에 따르면 이는 현재는 물론 미래의 프로토콜까지 지원할 수 있게 해주는 요소다. 그는 "IoT, 보안, 여타 앞으로의 여러 활용 사례에 대한 보장"이라고 표현했다. 기레시 CIO는 로열 캐리비안과 같은 기업의 경우 이를 통해 인프라스트럭처를 소프트웨어 개발 주기에 녹여넣을 수 있게 됐다고 말했다. 이번주 라스베이거스에서 열리고 있는 시스코 라이브 행사에서는 여러 시스코의 임원과 고객이 프로그래밍 가능한 네트워크의 특징과 혜택, 최종 사용자에게 미치는 의미에 대해 강조하고 있다. 시스코의 데브넷 센트럴 CTO 수시 위는 "예전에는 앱과 네트워크가 분리돼 존재했다. 그러나 네트워크를 프로그래밍할 수 있는 거대한 변화가 나타났다. 이제는 위에서 아래로, ASIC 자체로의 모든 경로로, 박스를 관통해 DNA 센터로 프로그래밍이 가능하다"...

2017.06.28

IDG 설문조사

회사명:한국IDG 제호: ITWorld 주소 : 서울시 중구 세종대로 23, 4층 우)04512
등록번호 : 서울 아00743 등록일자 : 2009년 01월 19일

발행인 : 박형미 편집인 : 박재곤 청소년보호책임자 : 한정규
사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2022 International Data Group. All rights reserved.

10.4.0.6