개발자노트

고정 헤더 영역

글 제목

메뉴 레이어

개발자노트

메뉴 리스트

  • 홈
  • 태그
  • 미디어로그
  • 위치로그
  • 방명록
  • James (134)
    • IT (123)
      • 프로그래밍 (119)
      • 기록 혹은 팁 (4)
      • 트러블 슈팅 (0)
      • 메모 (0)
    • Contact (0)
    • 에세이 (11)

검색 레이어

개발자노트

검색 영역

컨텐츠 검색

IT/프로그래밍

  • 새로운 프로그래밍 언어로 어떤 것을 배울까..

    2015.12.23 by James Lee.

  • [프로젝트 오일러] 피보나치 수열에서 4백만 이하이면서 짝수인 항의 합

    2015.12.18 by James Lee.

  • [프로젝트 오일러] 1000보다 작은 자연수 중에서 3 또는 5의 배수를 모두 더하면?

    2015.12.16 by James Lee.

  • 프로젝트 오일러 시작

    2015.12.14 by James Lee.

  • jsp compile 관련 500 오류

    2015.12.07 by James Lee.

  • 레거시 코드 리팩토링은 무엇이며 왜 필요할까

    2015.12.06 by James Lee.

  • 자바에 메모리가 저장되는 구조와 원리

    2015.12.06 by James Lee.

  • [데이터 마이닝] 결정 트리란 무엇인가? (What's the Decision Tree?)

    2015.12.06 by James Lee.

새로운 프로그래밍 언어로 어떤 것을 배울까..

지금 프로젝트 오일러를 진행하면서 알고리즘을 자바로 작성하고 있다.그런데 작성할때는 몰랐는데, 후에 작성한 코드를 읽어보니 가독성이 영 만족스럽지 못하다.. (리팩토링 과정을 거쳤음에도 불구하고, 혹은 내가 아직 리팩토링 실력이 많이 모자란 것일지도)코드를 다시 한번 훑어보니 아주 간단한 로직임에도 불구하고 코드가 길어지는 것들이 있었다. (ex : 최대 값 구하기)그래서 프로젝트 오일러에도 적용할 겸, 새로운 언어를 한가지 파보기로 했다.주류로 쓰이는 언어는 여러가지가 있지만 현재 나의 업무, 그리고 목적 (알고리즘의 간결화)에 부합하는 언어는 현재로써 크게 2가지가 있는 것 같다.1. 파이썬문법이 매우 간결하여 작성 속도가 빠르다.같은 이유로 가독성이 높다.TDD 가능 (쟝고?였나...)객체지향근데 ..

IT/프로그래밍 2015. 12. 23. 09:09

[프로젝트 오일러] 피보나치 수열에서 4백만 이하이면서 짝수인 항의 합

두번째 프로젝트 오일러 포스팅입니다.문제는 재미있게 7번까지 풀었는데 올리기는 벌써부터 왜이렇게 귀찮은 것인지 ㅠㅠ 그렇지만 칼을 뽑았으면 무라도 베어야겠지요.문제는 아래와 같습니다.피보나치 수열의 각 항은 바로 앞의 항 두 개를 더한 것이 됩니다. 1과 2로 시작하는 경우 이 수열은 아래와 같습니다.1, 2, 3, 5, 8, 13, 21, 34, 55, 89, ...짝수이면서 4백만 이하인 모든 항을 더하면 얼마가 됩니까? 코드를 작성함에 있어서 가장 기본적인 원칙은 아래와 같습니다. (몇 가지가 추가되었습니다.)clean code를 최대한 준수하도록 합니다. 코드의 라인 수가 짧을 수록 좋겠지만 그것보다는 깨끗한 코드를 만드는데에 더 초점을 두었습니다.SRP(단일 책임 원칙), OCP(개방-폐쇄 원칙..

IT/프로그래밍 2015. 12. 18. 19:59

[프로젝트 오일러] 1000보다 작은 자연수 중에서 3 또는 5의 배수를 모두 더하면?

첫 프로젝트 오일러 포스팅입니다.(사실 4번까지 풀었지만 올리기 귀찮음으로 인하여 미루다가 이제서야 올립니다..)문제는 아래와 같습니다.10보다 작은 자연수 중에서 3 또는 5의 배수는 3, 5, 6, 9 이고, 이것을 모두 더하면 23입니다.1000보다 작은 자연수 중에서 3 또는 5의 배수를 모두 더하면 얼마일까요?※ 이 문제에서 1000보다 작은 자연수라는 조건에는 1000도 포함입니다. 코드를 작성함에 있어서 가장 기본적인 원칙은 아래와 같습니다.clean code를 최대한 준수하도록 합니다.코드의 라인 수가 짧을 수록 좋겠지만 그것보다는 가독성에 더 초점을 두었습니다.최대한 모듈별로 나누어서 다른 사람들도 코드를 이해 할 수 있도록 하였습니다.1의 가독성이 유지되는 선에서 가능한한 코드를 짧게 ..

IT/프로그래밍 2015. 12. 16. 21:57

프로젝트 오일러 시작

'프로그래밍의 본질은 알고리즘이다.' 라는 임백준님의 말에 공감하여 연습 방법을 여기저기 찾아 보던 중 아래와 같은 사이트를 발견했다.http://euler.synap.co.kr/'프로젝트 오일러' 수학적인 문제들을 컴퓨터 프로그래밍으로 하나씩 해결해가는 퀴즈 풀이 사이트로써 원래는 외국 사이트지만 감사하게도, 요즘 번역 작업에 들어가 있는 모양이다. 난이도를 보니 금방 풀 수 있는 문제도 있고, 머리를 좀 싸매면서 풀어야 하는 문제들까지 다양하게 있다.모든 문제는 올해부터 배우기 시작한 TDD (Test Driven Developement)로 구현할 예정이다. (나도 아직 익숙하지는 않지만서도 이럴 때 하지 않으면 언제 하겠나..)읽으시는 분들 중 분명 나보다 훨씬 잘하는 분도 계실테고 TDD 등을 처..

IT/프로그래밍 2015. 12. 14. 09:16

jsp compile 관련 500 오류

오늘, 다른 곳에서는 잘 되던 개인 프로젝트가 회사 컴퓨터에서 돌리니 자꾸 아래와 같은 500 에러를 발생시키며 돌아가지 않았다.org.apache.jasper.JasperException: java.lang.ClassNotFoundException: org.apache.jsp.WEB_002dINF.pages.hello_jsp org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:176) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:375) org.apache.jasper.servlet.JspServlet.serviceJspFile..

IT/프로그래밍 2015. 12. 7. 20:06

레거시 코드 리팩토링은 무엇이며 왜 필요할까

이하 정리는 제가 이해한 방식을 설명드리는 식으로 정리하며, 실제 강의의 내용과 제가 이해한 내용이 틀릴 수 있음을 미리 양해 부탁드립니다.Legacy Code란?Legacy Code의 정의가 무엇일까? Legacy (낡은, 기존의) Code강의를 듣기 전날, 네이버에 검색을 해봤더니 Legacy Code란 (자기가 작성을 했거나, 남이 작성을 한) 기존에 개발되어 있던 코드라고 나온다.하지만 오이사님께서는 여기에서 보다 구체적으로 Test Code로 검증되지 않은 Code라는 말씀을 덧붙이셨다.이러한 Legacy Code의 문제점을 같이 알아보도록 한다.Legacy Code의 문제점내가 이해한 Legacy Code의 문제점은 이렇다.첫번째, 코드의 수정이 어렵다.Legacy Code는 단위 테스트가 되..

IT/프로그래밍 2015. 12. 6. 21:50

자바에 메모리가 저장되는 구조와 원리

이 포스트에서는 자바에서 메모리 구조가 어떻게 되어있고, 값이 어떻게 저장되는지를 살펴본다. 먼저 'a'라는 문자가 메모리에 어떻게 저장되는지를 생각해보자 메모리 구조는 1바이트를 단위로 한다고 가정한다. 'a'의 유니코드값은 97이다. 그렇다면 1바이트에도 저장 할 수 있다 (-128~127) 하지만 자바에서의 char은 2바이트이다. 그럼 2바이트에 'a'가 어떤 형태로 저장될까? 아래의 메모리 구조를 살펴보면바로 앞번지에 0이 들어가고, 뒷번지에 a라는 값이 들어간다.즉, 남는 번지는 0으로 비워놓는다는 것이다. 이는 a = 0a, 10 = 010과 같은 원리이다. 문자열 "ab한글"을 대상으로 String.getBytes(), String.getChars()를 사용했을때, Byte배열로 가져오는것..

IT/프로그래밍 2015. 12. 6. 21:00

[데이터 마이닝] 결정 트리란 무엇인가? (What's the Decision Tree?)

(그림의 출처는 넷스루의 서동렬 박사님께서 그리신 것을 사용했음을 밝힙니다.)지난 포스팅에서는 데이터 마이닝의 개념과 어떤 종류가 있는지 살펴봤다. 데이터마이닝은 아래와 같이 3가지로 분류된다고 했다. Supervised Clustering(교사 학습을 통한 단위 묶기) - Making Decision Tree Unsupervised Clustering (비교사 학습 단위 묶기) - K means Clustering Market Basket Anlysis (장바구니 분석) - Association Rule Mining ​이번 포스팅에서는 이 셋중의 한가지인 Supervised Clustering(교사 학습 단위묶기)의 방법인 Decision Trees를 살펴본다. 여기서 교사란 학생을 가르치는 교사의 뜻..

IT/프로그래밍 2015. 12. 6. 21:00

추가 정보

인기글

최신글

페이징

이전
1 ··· 6 7 8 9 10 11 12 ··· 15
다음
TISTORY
개발자노트 © Magazine Lab
페이스북 트위터 인스타그램 유투브 메일

티스토리툴바