비슷한것 같고, 알게 모르게 혼용하는 단어이지만 확실히 구분하라고 물어보면 어려워보이는 단어인데 임백준님의 책을 보다가 알기쉽게 설명해주셔서 정리해놓는다. 동시성여러가지일을 한꺼번에 다루는것을 말한다. 병렬적(같이)으로 실행되는것과는 다르다. 내가 프로젝트를 2개 뛴다고해서 2개의 프로젝트를 동시에 개발하는건 아니다. A를 개발할땐 B가 멈출것이고, B를 개발할땐 A가 멈출것이다. 병렬한꺼번에 일을 처리하는 것을 말한다. 내가 그림자 분신술을 써서 A, B 프로젝트를 같이 진행하면 이것은 병렬이다. 100만개의 요소가 들어있는 숫자배열이있다. 이 배열의 모든 요소들에 2를 곱하려한다. 이때 배열을 25개씩 4등분하여 동시에 2를 곱하는것은 병렬적이다. 참고문헌폴리글랏 프로그래밍7가지 동시성 모델
이번엔 클로저에 대해 포스팅을 하려한다. 내가 다룰줄 아는 언어중에(자바스크립트, 자바) 클로저를 완벽하게 지원하는 언어는 자바스크립트 뿐이므로 주로 자바스크립트 예제로 설명할 것이며, 자바의 클로저도 설명하면서 마칠 예정이다. 자바스크립트로 코드를 짜다보면 의도치않은 클로저로 인해 원하는 것과 다른 결과를 얻는 경우가 종종 있다. var arr = []; for(var i = 0; i < 10; i++){ arr.push(function(){ console.log(i); }); } arr.forEach(function(func){ func(); }); arr에 10개의 함수를 담아놓고 아래 라인에서 배열을 순회하며 함수를 호출한다. 보통은 0~9 까지가 출력되길 바란다. 단순 예제지만 DOM(Docum..
Test Driven Development 의 약자로 테스트 주도 개발이라는 뜻이다.기존에는 폭포수방식이라고해서 설계가 진행되면 구현, 구현 후 테스트, 테스트 후 인수 이런 방식으로 일단 설계한대로 모든 개발이 끝나고나면 테스트를 진행하는 방식이었는데 이런식으로 하다보니 에러가 발생했을때 해당 에러를 찾고, 수정하는데 있어 소모되는 시간과 비용이 너무 커져 이를 바꿔보고자하고 나온것이다. 개발이 완료되면 테스트를 하는것이 아니라 구현의 가장 아랫부분인 메서드 구현단계부터 지속적인 테스트를 통해 개발을 함으로서 지속적인 테스트를 하게되고 문제점을 보다 빨리 찾아내어 적은 비용으로 에러를 처리하고 완성도높은 소프트웨어를 개발하고자 하는것이다. '주도'라는 단어에 좀 더 집중을 해야하는데 메서드를 구현한 후..
TDD라는 개발론이 있다. Test Driven Development 의 줄임말인데 우리말로는 테스트 주도 개발 이라고 한다.절차를 밟아가며 차례차례 진행 후 제품을 모두 개발한 후에 테스트를 진행하는 기존 폭포수방식에서 벗어나 모듈, 함수별로 즉각즉각 테스트를 진행하며 개발을 하자는 것이다.뼈대를 다 만든후 테스트를 진행하는 기존 폭포수 모델의 경우 에러 혹은 의도치 않은 값이 나올경우 디버깅을 하는것도 힘들뿐더러 비용도 많이 소모된다. 하지만 함수, 메서드 하나를 만드는 와중에도 테스트를 진행하기때문에 에러를 보다 빨리 발견할수있고 수정에 소모되는 비용도 줄어든다. 또한 그만큼 제품의 완성도도 올라가게된다. TDD에서 직접적으로 제안하는건 일단 실패코드를 작성하는 것이다. 최종적으로 원하는 함수를 먼..
camelCase첫단어는소문자로 뒷단어부터는 첫글자대문자로 구분 예)httpServletRequest PascalCasecamelCase랑 같은 방식이지만 첫단어부터 대문자 예)HttpServletRequest snake_case전부다 소문자로 이루어져있고 연결되는 단어는 _로 연결 예)http_servlet_request ALL_CAPS_SNAKE_CASEsnake_case 방식이지만 전부 대문자로 예)HTTP_SERVLET_REQUEST Snake_Pascal_Casesnake_case 와 PascalCase 랑 혼합 예)Http_Servlet_Request
- Total
- Today
- Yesterday
- go-core
- JavaScript Core
- OOP
- servlet
- java
- db
- clean code
- Spring
- DesignPattern
- MySQL
- code
- Jackson
- 정규표현식
- TEST
- programming
- EffectiveJava
- toby
- frontend개발환경
- Design Pattern
- java8
- generics
- frontcode
- mariadb
- http
- JPA
- Git
- backend개발환경
- spring cloud
- Kotlin
- javascript
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |