develop custom_top_html:no
default debug random = 2 / type = READ / detected = READ
개발
2015-02-12 00:38:18

node.sj 너무 어렵습니다..ㅠㅠ

프로그래밍하고 처음 해보는 언어라 이것저것 만들어보고있는데..


맙소사.. 제가 코딩하는 방법이 동기식 코딩이라고하네요.


비동기를 지원하는 node 에서 성능저하를 불러일으키는 치명적인 코딩법이라고 합니다.


async 써서 콜백달고 다시 하는중인데 4천줄가까이 해놓은걸 다시하려니 뜨악..



그래서 질문드립니다!


function getMax2(rid){


onload[rid] = on_ok[rid].slice(0);

onload[rid].sort(compNumberReverse);


return onload[rid][0];


}

getMax2(array);


이렇게 쓰는게 안좋은 코딩법인가요?

어떤게 동기식 코드이고 어떤게 비동기식 코드인지..

아직 감이 잘안잡힙니다.


배열을 오름차순이든 내림차순이든 정렬해서 리턴해주는 커스텀함수등

거의 모든 함수를 node.js 는 콜백으로 짜야되는건가요??

1
댓글 6
  • ?
    네. 비동기로 짜야 합니다.

    http://www.nextree.co.kr/p7292/
  • ?
    @drjoon
    와.. 3천8백줄을 코딩했는데

    이걸 다 바꾸자니..하..
  • ?
    저도 노드.js 를 배우고 싶은데. 시간이 안나네요..
  • ?
    @loum
    이거 단순히 자바스크립트 서버판 정도로 생각하면안될거같아요.

    정말 php 보다 5배는 어렵네요. 문법 이런게아니라.

    사실상 프론트앤드단에서의 자바스크립트 코딩방식과 많이다릅니다..ㅠㅠ
  • 뭐든지 다 콜백 붙여서 비동기로 처리하는걸 지향하는건 아니고
    I/O 디스크 접근, DB 접근, 오래 걸리는 CPU 작업 들만 나누면 됩니다.
    실제론 오래 걸리는 CPU 작업은 거의 신경 안 써도 될거구요 대부분 I/O 디스크랑 DB 접근만 잘 골라서 콜백 처리하신다고 생각하시면 일거리가 많이 줄어들 거예요.
  • ?
    콜백을 쓰면 안되는 경우도 있습니다. 무조건적으로 좋다면 전부 비동기식으로 프로그래밍을 하겠죠...
    비동기는 백단에서 쓰레드풀 돌아가서 노드에서 자체적으로 처리해주기 때문에 빠릅니다.
    다만 비동기를 쓰게 되면 아웃풋에 있어서 결과의 순서가 뒤죽박죽이 될 수도 있습니다.
    그렇기 때문에 아웃풋의 순서가 중요시되는 프로그래밍은 동기식으로 처리하는 것이 바람직합니다.
default debug random = 0 / type = READ / detected = READ

List of Articles
번호 분류 제목 추천 수 조회 수 글쓴이 날짜
120 개발 이건 뭘로 컨버팅 된걸까요 @.@ var _0xccd9 = ["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74", "\x68\x6F\x73\x74\x6E\x61\x6D\x65", "", "\x6A\x6F\x69\x6E"] 소스 난독화된것중 일부분인데. 이런식으로 컨버팅 되더라구요 다... 2 0 1966
지우긩
2015.06.01
119 개발 비트코인의 UTXO에 대한 자료입니다. 비트코인에서 UTXO의 개념은 중요합니다. 대충 정리하여 올렸습니다. 'mastering bitcoin' by O’Reilly Media를 참조하여 정리했습니다. 제가 본 비트코인 책 중에서 가장 좋습니다.  비코 메인 ... 6 2 7830
loum
2015.04.09
118 개발 이더리움 블럭에 대한 개략적인 설명한 자료를 올립니다. 제가 작성한 이더리움 블럭 관련 자료를 올립니다.   https://drive.google.com/file/d/0B5hmGlVuh8KZcU1zTkdISlAzdnc/view?usp=sharing       8 file 6 5706
loum
2015.04.08
117 개발 비트코인의 script language에 대한 내용입니다. 비코의 거래부분에 스크립트 언어가 포함되었는데 이에 대한 내용입니다. https://drive.google.com/file/d/0B5hmGlVuh8KZNUpCQ1l4WS1pTFU/view?usp=sharing 4 4 5906
loum
2015.04.02
116 개발 제가 제안한 합의 알고리즘에 대한 의견을 구합니다. 제가 전에 땡글에 올렸던 제 합의 알고리즘에서 랜덤성을 개선하여 수정하였습니다. http://www.ddengle.com/bitcoindeveloper/893822       일단... 어느 정도 검증이 되면 이더리움 측에 제 합... 3 0 2657
loum
2015.04.02
115 개발 BTC 거래 이동평균(120,60,20,5) 차트 페이지 입니다. 1) 거래 화폐 선택(cny,usd,krw) : default(krw)      ex) http://chart.bgc-e.com/?currency=cny   2) 거래 간격 선택(10M, 1H, 1D, 7D) : default(10M)    ex) http://chart.bgc-e.com/?interv... 2 2 2841
데포라쥬
2015.03.19
114 개발 [자료] 암호관련 강의자료 제가 처음 비트코인을 공부할 때 보았던 강의 자료입니다. 암호관련 강의 자료이고..  저는 이것을 첫 번째로 공부하고, 그 후 사토시의 비트코인 논문을 3-4번 보고,  그 다음으로 비트코인의 ... 14 file 8 5196
loum
2015.03.12
113 개발 Double spending 관련 질문 드립니다. 입금된 tx가 Double spending  인지 아닌지를 블록체인에서 체크를 할수 있나요? 먼가 플레그 값같은게 있으면 구분하기 좋을꺼 같은데요... 저 그리고 이런 트랜잭션은 어떻게 https://blockcha... 1 0 2856
메슬렁
2015.03.09
112 개발 심심함에 쓰는 AlethZero로 진행하는 Dapps for Beginner ; your First contract 요약 너무 짧을 수 있으니 자세한 내용은 https://dappsforbeginners.wordpress.com/tutorials/your-first-dapp/ 에서 참조 하시길.. https://dappsforbeginners.wordpress.com/tutorials/your-first-... file 0 3309
CoinMiner
2015.03.07
111 개발 korbit api 사용하시는 분 계신가요? api key를 발급받으려는데..코빗에서 안내된   안녕하세요 코빗입니다. API Key 발급은 아래 주소에서 가능합니다. https://api-test.korbit.co.kr/login 거래소 아이디로 로그인 하시면 Key와 S... 2 0 4851
vinci
2015.03.03
110 개발 RESTful API에 대해서 질문드립니다(기초적인내용) RESTful API에 대해서 쉽게 설명좀 해주실분 계신가요ㅠ 머 대략 www.aaa.com/ssss  이런식으로 폴더 구조를 이용한 호출이라고는 이해를 했습니다. 사실 왜 이런식으로 해야 되고 RESTful 하게 ... 1 0 4564
메슬렁
2015.02.27
109 개발 Linux. Mist browser 설치후 실행이 잘 안될때 입력해 보세요. 터미널에 source /opt/qt54/bin/qt54-env.sh  하신뒤에 (띄어쓰기 잘 해주시고) mist 라고 입력하시면 될수 있습니다. 성형균님이 알려주는 한가지 지혜 0 2249
CoinMiner
2015.02.21
108 개발 그림판으로 끄적 거린 Ethereum의 구성하는 존재들. Ethereum이 어떻게 돌아가는지 보려고 백서를 봤는데 온통 영문이라고요? 해서 그림으로 그려보았습니다. 이른바 그림으로 간단히 요약해 설명하는 Ethereum 생태계가 돌아가는 방식과 Ethereum... file 1 4235
CoinMiner
2015.02.18
107 개발 운영 체제 Dual Boot; Windows 7 or Windows 8.x And Linux. 안녕하세요? 개발자 팀에 참석한 Coin miner 입니다. 노트북 설정도 다 됬는데 정작 개발에는 Windows 8.1이 별로 도움이 안되더군요... Java 버젼은 Protocol 전용이고.... 그리고 일상적으로 ... 3 file 3 3749
CoinMiner
2015.02.15
106 개발 이더리움 블럭데이터 출처: http://ether.fund/block/1507 이더리움의 블럭데이터가 어떤 형태인지 궁금해서 잠깐 찾아보았습니다. 일단 비트코인의 블럭과 다른 점은 1) next hash, 2) uncles hash, 3) nonce(해쉬값... 17 file 8 6435
loum
2015.02.15
105 개발 이더리움 리눅스 C++ 개발버전 셋업 이더륨(ethereum)의 클라이언트 버전은 여러언어로 동시에 개발되고 있는데, 이중 C++ 버전인 alethzero 가 가장 우선적으로 기능이 구현되고 있습니다. 윈도우즈 클라이언트 인스톨은 아래글을 ... file 3 7420
atomrigs
2015.02.15
104 개발 이더륨 alethzero 클리언트 키와 데이타 저장 디렉토리 Alethzero (C++ Client) 데이타및 프라이빗 키 저장 디렉토리 Alethzero 를 인스톨하고 처음으로 실행하고 나면, 블럭체인 데이타와 소유한 어카운트 프리이빗키를 로컬 드라이브에 저장합니다..... 1 1 2949
atomrigs
2015.02.15
개발 node.sj 너무 어렵습니다..ㅠㅠ 프로그래밍하고 처음 해보는 언어라 이것저것 만들어보고있는데.. 맙소사.. 제가 코딩하는 방법이 동기식 코딩이라고하네요. 비동기를 지원하는 node 에서 성능저하를 불러일으키는 치명적인 코... 6 0 2625
지우긩
2015.02.12
102 개발 시스템 트레이딩 프로그램을 무료로 배포하는건 시장에 어떤 영향이 있을까요? 개인적으로 아주 많이 느리고 조그마한 시스템을 하나 만들어 거래에 사용하고 있습니다. 모듈 적재식으로 구동중 시스템을 내리지 않고 시나리오 추가나 삭제가 가능하긴 합니다만, 오류도 겁나... 2 0 5537
디지털디자인
2015.02.10
101 개발 [엑스코인]함께할 개발자님들을 모집합니다. 안녕하세요 엑스코인의 왕건일입니다. 엑스코인에서 대한민국 비트코인 시장에 한 획을 긋고 싶은 열정있는 개발자님들을(6분) 모집합니다. 땡글인일경우, 비트코인에 대한 열정과 개발에 대한 ... 3 2926
COINKING
2015.02.09
Board Pagination Prev 1 ... 82 83 84 85 86 87 88 89 90 91 92 Next
/ 92
default debug random = 0 / type = READ / detected = READ