본문 바로가기

Javascript

TypeScript 언어 핵심 요약 사항 TypeScript 언어 핵심 요약 사항 TypeScript 핵심 요약은 ES6 에 추가된 기능과 중복된 항목이 있다. TypeScript 는 Javascript 의 슈퍼셋(Superset)이라고 하지만, 아직 ES6 를 완벽하게 지원하지 않는다. 그래서 본 글의 핵심 요약은 TypeScript 에서 추가된 기능이자 ES6 와 중복된 내용이 있다.ES6 의 새로운 기능은 다음의 링크에서 참고하기 바란다. http://es6-features.org/ TypeScript 2.1 최신이고 아직 꾸준히 업데이트 중이며, 1.8 버전을 기준으로 비교된 ES6 와 호환 테이블이다. http://kangax.github.io/compat-table/es6/ TypeScript 의 모든 언어 사양은 아래의 링크를 참고.. 더보기
[Github/Javascript-OOP-AOP-IoC] 자바스크립트 객체지향 프로그래밍 (github) Javascript-OOP-AOP-IoC / 자바스크립트 객체지향 프로그래밍 자바스크립트 객체지향 프로그램을 쉽게 하기 위한 소스 코드를 github 에 공개(https://github.com/powerumc/Javascript-OOP-AOP-IoC)했다. 자바스크립트로 객체지향 프로그래밍을 잘 하려면 배워야 하는 것들이 참 많다. 함수형 프로그래밍과 자바스크립트의 prototype 기반의 chain, 함수를 인스턴스로 사용하고, 객체지향적인 몇 가지 자바스크립트 패턴을 익혀야 하는 데, 쉽지만은 않을 것이다. C 가장 간단한 객체지향 코드를 보자. 이 코드는 Program 클래스를 상속 받은 Outlook 클래스가 있고, run() 메서드로 실행하는 코드다. function INHERITANCE(PAR.. 더보기
[Handlebars] Handlebars.java 버전의 with helper 버그 패치 커밋 회사에서 Handlebars.java 와 관련된 이슈가 공유가 되었다. Handlebars 가 Javascript 버전과 Java 버전의 #with helper 결과가 동일하지 않습니다. 우선 이 이슈 버그를 해결한 코드는 필자의 github 저장소 https://github.com/powerumc/handlebars.java.bug-fix 에 커밋 되어 있고, 원본 저장소의 이슈 번호 #314, Pull Request #315 에 등록 되었다. Handlebars vs Handlebars.java 이 테스트에서 사용되는 handlebars 데이터는 다음과 같습니다. { "company": { "ko": "쿠팡", "en": "Coupang" }} 그리고 handlebars 템플릿은 다음과 같다. {{#.. 더보기
[GitHub] 세 가지 업데이트 소식 js-lambda-expression, js-array-extensions, monodevelop-korean 필자가 github를 통해서 제공하는 자바스크립트 두 가지 패키지 모두 npm과 관련된 버그가 픽스 되었다. 각각 npm package 버전이 업데이트 되었고, nuget은 금주 중으로 패키지를 재배포 할 예정이다. 또한, Unity 게임 개발 및 Mono 개발에 필요한 MonoDevelop 한국어 버전도 몇 주 전 최신 저장소 코드로 업데이트가 완료 되었다. Bugs related to npm both packages provided the author through the github has been fixed. npm is updated each, nuget is a plan to re-distribute the package later in the week. In addition, the upda.. 더보기
[JavaScript] JS-Lambda 자바스크립트 라이브러리를 공개합니다. JS-Lambda 자바스크립트 라이브러리를 공개합니다. JavaScript Array Extensions 자바스크립트 오픈 소스를 개발한 데 이어 JS-Lambda 를 LGPL 라이센스로 공개합니다. JavaScript 에서 람다 표현식(Lambda Expression)을 사용할 수 있도록 만든 라이브러리 입니다. 자세한 내용은 아래의 소스 코드를 참고 하시면 됩니다. Github: https://github.com/powerumc/js-lambda JS Lambda It is possible lambda expression that can be used JavaScript. you just got a function F(); Simple Examples // Before function func(a,b.. 더보기
[JavaScript] Javascript Array Extensions 소스코드 오픈 (웹브라우저, Node.js 사용 가능) Javascript Array Extensions Array Extensions는 Node.js 와 브라우저에서 사용할 수 있는 배열 라이브러리이다. 요즘 자바스크립트(JavaScript) 를 만지는 날이 많아져서 JavaScript 로 뭘 만들 수 있을까 하는 생각에 기억을 더듬어 보니 JavaScript 에서 배열을 다루는 일이 많았다. jQuery의 selector 등으로 DOM을 다루는데 효과적이지만, 배열을 다룰 때는 모라는 점이 많았다. 인터넷에 찾아보면 자바스크립트(JavaScript)로 배열을 다루는 오픈 소스를 발견하였다. 그 중 가장 호감이 가는 자바스크립트(JavaScript) 오픈 소스를 발견하였다. 자바스크립트로 C#과 가장 비슷하게 Enumerable과 LINQ를 구현한 자바스크.. 더보기
[Javascript] 자바스크립트(Javascript) 개발 팁과 가이드 (Tips & Guide) 필자는 최근 자바스크립트(Javascript)를 자주 만지게 되면서 몇 가지 팁 또는 가이드 정보를 공유하고자 한다. 자바스크립트(Javascript)를 좋아하지만 잘 하지는 못한다. 그래서 먼저 개념적으로 잘못된 부분이 있으면 정중하게 미리 양해를 구하고자 한다. 1. 익명의 즉시 실행 함수로 스크립트를 시작하자 익명(Anonymous)의 즉시 실행 함수(Immediately Invoked Function Expression)는 다음의 코드와 같이 정의된다. (function() { // ... 코드 생략 ... }()); 익명 함수(Anonymous Function)는 자바스크립트(Javascript)가 런타임(Runtime)에 구문을 해석하여 실행한다. 이는 외부의 접근을 제한함을 의미한다. 그러므.. 더보기
Visual Studio 11, 더욱 똑똑해진 코드 에디터 개발자에게 Visual Studio 11의 가장 큰 장점 중에 하나가 될 바로 코드 에디터 입니다. 특히 C++ 개발자에게 원성을 샀던 부실했던 C++ 코드 에디터는 기존의 C,#, VB.NET 과 동등할 정도로 코드 에디터의 구현에 충실해 다른 확장 도구의 도움 없이도 충분히 사용이 가능합니다. (Visual C++ 의 코드 에디터는 그 흔한 코드 컬러링도 기대 이하의 수준이었거든요) C++ 코드 에디터 C++ 개발자에게는 C++ 코드 편집기의 컬러링과 인텔리센스는 정말 희소식일 것 같습니다. C++ 개발자는 기본적인 코드 작성에 Visual Assist 툴에 많이 의존하였었지만, 이제 외부 도구의 도움이 없이도 코드 작성에 어려움은 없을 것 같습니다. 아래의 Visual Studio 2010과 Vis.. 더보기
외부 라이브러리에서 Javascript 인텔리센스 활성화 하기 외부 라이브러리에서 Javascript 인텔리센스 활성화 하기 Visual Studio 에서 추가된 기능입니다. 기존에 html(aspx) 페이지에서 블록을 통해 Javascript 인텔리센스 기능이 제공이 되었지만, 여전히 문제였던 것은 Javascript 파일을 작성할 때, 외부 Javascript Function 의 인텔리센스 기능이 제공이 되지 않았습니다. 하지만, Visual Studio 2008 을 설치하시면 외부 Javascript Function 을 인텔리센스 기능으로 사용하실 수 있습니다. 크게 설명 드릴것도 없이 아래의 스크린샷 처럼 주석을 통해 외부 Javascript Function 의 인텔리센스를 사용하기 위해 Import 할 수 있습니다. [그림1] Jscript1.js 에 Fu.. 더보기