
서론안녕하시렵니까 Shiny Ocean 입니다 : ) 이번주에 해볼짓은 Node.js 랑 좀 친해져 보려구합니다~ 근데 주제를 선정하다가..맨날 출근하면 하는짓이 데이터 상하차 [http req, Json 하차, 쿼리조회, Json상차 , req 처리] 인데 퇴근하고도 상하차 하고싶지는 않네요~ 저 웹 상하차짓을 Node.js로 구현하려해도(나중엔 하겠지만) 셋팅하는게 더 오래걸려용.... 그래서 그나마 재밌는게 뭐가 있을까 하다가;; 작년 우리팀(이글스) 경기 결과 를 쭉 크롤링 해보려구용, 패배경기 최다 출전선수도 뽑아보고, 평균적으로 몇점수차로 지거나 이겼는지도 보고~근데 DB 안쓸겁니다. CSV 나 TSV 파일로 결과 저장하는 크롤링 모듈짜려구용 저런걸 DB 쿼리 없이 하려면 데이터 객체 구성도 ..

(나름 스프링과 개미를 믹스한 이미지라 생각해서 가져옴 - 찐특: 설명함) 개요안녕하시렵니까 ShinyOcean 입니다 :) Node를 좀 다시 공부해야할거 같습니다. 세상이 너무 빠르게 변하네요 분명 학부 4학년(약 3년전) 기준으로 취업시장 주력 개발 언어는 거의 다 자바 (근데 이제 스프링을 곁들인) 였거덩요 근데 요즘 채용공고나 인력풀을 좀 살펴보면 제가 좀 구미가 당기는 서비스기업들은 노드를 쓰는거 같습니다.. 허허 흠... 일단 저는 한달뒤면 벌써... 3년차 SI 일개미입니다. 주력은 자바를 썻고 (사실 로직개발 요즘 잘 안함) 일은 어쩌다 보니 오라클 쿼리 성능개선 또는 한방쿼리 위주의 요건 처내기 개발? 비스무리한 행위를 하고있네요. (로직개발을 안한다 생각이 드는게 걍 쿼리 성능좋게 하..

안녕하세요 :-) 이번 포스팅에서 다루어볼 것은 선택정렬과 마찬가지로 시간복잡도 O(N^2)을 갖는 버블정렬 알고리즘입니다. 선택정렬 알고리즘의 경우 가장작은값을 찾아 기억할 변수 min값이 필요했었지만 버블정렬에서는 따로 필요하지 않습니다. 왜냐하면 버블정렬의 아이디어는 바로 원소 자신의 양옆의 인덱스와 비교하여 더 작은값을 앞으로 보내는 것이기 때문입니다. 선택정렬 알고리즘의 경우 조건 검사 범위를 앞에서 부터 제외했었습니다. 제외된 원소들은 이미 정렬이 완료되었다 간주했기 때문입니다. 하지만 버블정렬의 경우 뒤에있는 인덱스를 순서대로 제외하며 정렬을 수행합니다. 정렬 절차 1. 맨앞 인덱스의 원소 부터 자신과 오른쪽의 값을 비교하여 오른쪽이 더 크다면 자신과 위치를 바꿉니다. 2. 배열 전체를 조건..

안녕하세요 :-) 이번 포스팅은 선택정렬 알고리즘에 대해 다루어보겠습니다. 정렬 알고리즘은 여러가지가 존재 하지만 각각의 효율성과 구현 난이도에서 차이가 드러납니다. 선택정렬 알고리즘의 경우 O(n^2)의 시간복잡도를 갖는 처리 속도가 비교적 좋은 알고리즘은 아니지만 정렬의 매커니즘을 이해하기 편하고 그만큼 구현이 쉽기때문에 가장 먼저 다루어볼 알고리즘입니다. 정렬할 타겟배열 내에서 가장 작은 값을 선택하여 가장 앞으로 보내는 아이디어를 이용하는 알고리즘으로 디버깅 과정은 아래와 같습니다. 정렬 절차 1. 전체배열을 조건검사하여 가장 작은 값을 첫번째 인덱스와 스위치 시킵니다. 2. 첫번째 인덱스를 제외한 나머지 배열을 조건검사하여 가장 작은 값을 두번째 인덱스와 스위치 시킵니다. 3. 첫번째와 두번째 ..

Algorithm - intro 안녕하세요 : ) shiny ocean입니다. 3학년 2학기를 맞이하며 새롭게 다루어볼 전공 과목중 "블로그에 포스팅을 통해 기록을 남겨야겠다!!" 고 결심한 것은 데이터베이스와 알고리즘 두 과목이었습니다. 이번 카테고리는 그중 알고리즘에 대한 내용을 다루어 보겠습니다. 들어가기전에 잡담을 먼저 해보겠습니다. 시작하자 마자 정렬의 종류는 퀵, 선택, 병합 어쩌구 시간복잡도는 저쩌구 하면 거부감만 들거 같습니다 하지만 유감스럽게도 다음 포스팅부터는 그렇게 할것입니다... 어쨋든 이번 포스팅에서 해볼 이야기는 "알고리즘이 무엇일까"에 대해 초점을 맞춰 보겠습니다. 알고리즘? 제가 저 단어를 처음 접해본것은 알파고와 이세돌9단의 바둑경기가 이슈였을때 입니다. 제가 고등학교 3학..

비밀일기 사이트 Plog 개발기! Intro 안녕하세요 ;-) 정말정말 오랜만에 개발관련 포스팅을 끄적이는것 같습니다! 핑계 : 원래는 이번 방학을 이렇게 나태하게 보낼생각은 아니었지만 초반에 계절학기 수강하고 영어시험치루고 나니 웹개발은 시간투자를 잘 하지못했습니다. 이번 방학은 웹개발이 무엇인지 탐구해보고 전반적인 개념을 잡기 위해 Node.js로 많은 삽질을 해봤었습니다. 그런데 몇가지 토이프로젝트를 제외하고 결과물이 없는것 같아서 참 속상했습니다. 방학은 곧 끝나가고... 얼마 남지 않은 기간동안 초라하더라도 DB를 연동한 서비스를 만들어 보고싶었습니다. 그래서 기획하게 된 이번 프로젝트의 진행기간은 딱! 3일이었습니다(8/26~8/28) 어제와 그제는 9시간 오늘은 4시간정도 시간을 투자했던것같..

안녕하세요 :) 이번 포스팅에서는 지금까지 배운 내용을 이용해서 몇개의 토이프로젝트를 진행해보겠습니다. 복습을 위해 간단한 웹사이트들을 만들어 볼것입니다. 1. 가사 정보 사이트 첫번째로 요청 패스를 이용해서 하이퍼 링크의 텍스트를 리다이렉션 해주는 미들웨어를 만들어 활용해보겠습니다. 옛날에 제가 html을 이용해서도 비슷한 웹 사이트를 만들었었는데요, 해당 사이트는 html의 태그와 href 에 파일의 경로를 직접 입력해주는 방법을 활용했었습니다. 전체적인 레이아웃은 태그를 이용했습니다. 이번에는 경로를 path로 지정하여 리다이렉션 메소드를 통해 페이지를 이동하게 만들어 보았습니다. (가수는 에스파로 했어요 윈터님 너무 귀엽습니다..!) 2. 사진 첨부 메모(책 도전 문제) 두번째로 진행해본 프로젝트..

안녕하세요 :) 이번 포스팅의 미들웨어 기능까지 구현해보면 다음 포스팅엔 지금까지의 내용을 바탕으로 간단한 웹페이지를 몇개 만들어보겠습니다. 요청과 응답페이지에 대한 미들웨어 라우팅이 가장 메인이되는 페이지들일것입니다. 이번 포스팅에서 다루어볼 내용은 서버에 파일을 업로드하는 기능 구현하기 입니다. 웹 서버는 기본적으로 서버에 저장된 문서를 조회하거나 데이터를 받아 저장할수 있지만 파일 자체를 업로드하거나 다운로드 하는 경우도 자주 있습니다. 이때, 외장 모듈을 사용하면 익스프레스에서 파일을 업로드할수 있습니다. 파일을 업로드할때는 멀티 파트 포멧으로 된 파일 업로드 기능을 사용하며 파일 업로드 상태 등을 확인할수 있습니다. -멀티 파트 포멧 음악이나 이미지 파일 등을 일반 데이터와 함께 웹 서버로 보내..