Undefined

· Undefined
모든 프로그래머는 자신의 코드가 효율성을 갖추기 위하여 프로그래밍을 하여야 할 의무가 있습니다. 알고리즘이란? 설명에 앞서 1부터 100까지 더하는 프로그램을 구현해 봅시다. 아래와 같이 간단하게 구현할 수 있습니다. int result = 0; for (int i = 1; i
· Undefined
IT 업계라고 하면 소위 "네카라쿠베" 와 같은 벤처 IT를 생각하기 마련이다. 또한 프로그래머라고 하면, 윈도우 상 응용 프로그램을 개발한다던지(ex. 한글 오피스) 웹 사이트를 구축한다던지(백엔드, 프론트엔드).. 아니면 카카오톡과 같은 모바일 어플리케이션을 만든다던지? 이와 같은 순수 SW를 생각하겠지만, 그 외 아주 다양한 업계도 존재한다. 그 중 사람인 사이트에서 구인이 아주 많은 업계 하나를 소개하고자 한다. 솔직히 여기서 4년차로 일하고 있지만, 정확히 부르는 명칭은 모르겠다.. 재직자들 사이에선 FA(Factory Automatic) 업계라고 하는 사람도 있고, 제조 IT라고 부르는 사람도 있고.. 장비업계라고도 부르더라.. 일단 이게 뭔지부터 알아보면, 말 그대로 자동화 장비를 만드는 회..
· Undefined
최근 4차 산업혁명에 대한 '붐' 이 불면서, 이곳 저곳에서 프로그래밍을 배워보려는데, 어떻게 시작해야되는지 물어보는 사람이 많아졌다. 회사에서도 타 부서 사람이 소프트웨어 공부는 어떻게 해야되냐는 등.. 따라서 필자는 어떻게 소프트웨어를 공부했는지, 그 개인적인 방법에 대해 얘기해보고자 한다. 어떤 언어를 공부해야 하는가? 우리는 프로그래밍(코딩)을 '언어' 라고 칭한다. 언어? 한국어, 영어, 독일어, 중국어, 일본어.. 모두 언어이다. 이와 똑같이 C, C++, 파이썬, Java .. 이 모두를 우리는 프로그래밍 언어라고 부른다. 그럼 이 중 어떤걸 공부해야 하는가에 대한 답은 딱히 정해져있지 않다. 취업을 목적으로 본다면, 대한민국에서 가장 많은 개발 수요량은 Java이다. 웹, 모바일 등 갈 수..
· Undefined
스프링 개념 프레임워크는 개발자에게 구조화된 기본 뼈대를 제공함으로서 기본 구조를 정하고 이 구조 위에서 코드를 작성하게 함으로서 기본적인 코드를 작성하는 시간 낭비를 줄여줍니다. 스프링 프레임워크 역시 DI를 사용하여 디자인 패턴에 대한 자세한 이해가 없어도 객체를 싱글턴 패턴으로 사용할 수 있도록 만들어 줍니다. 싱글턴 : 인스턴트가 하나 뿐인 특별한 객체. 어디서든 접근 가능한 객체 스프링 프레임워크는 스프링 컨테이너라는 런타임 엔진을 제공하며 이 컨테이너는 생성에서 소멸까지 객체의 라이프 사이클을 관리하며 이 과정에서 IoC와 DI를 사용합니다. 스프링 용어 IoC는 Inversion of Control의 약자로 말 그대로 프로그램의 제어 흐름 구조가 바뀌는 것을 의미합니다. IoC를 통하여 객체..
· Undefined
JSP 환경에서 Ajax를 통하여 데이터베이스에 접근하고, 이를 통해 간단한 데이터를 출력하는 예제입니다. MySQL을 기준으로 작성되었습니다. 먼저 mysql-connector-{JAVA Version}-bin.jar 파일을 다운받아 해당 프로젝트의 WEB-INF 아래 lib 폴더에 복사합니다. JDBC connector 등록 및 DO 추가 프로젝트 폴더의 src 폴더에 패키지를 생성하고, DAO 클래스를 등록합니다. 예를들어 주소록 프로그램이라면 addrDAO.java 와 같이 적당한 이름으로 생성합니다. // JDBC connector 등록과 DO 추가 public class PortraDAO { Connection conn = null; PreparedStatement pstmt = null; /..
· Undefined
PDCA 모델 각 주기와 PMBOK의 5가지 프로세스 PDCA 사이클이란 어떤 일을 함에 있어 계획(Plan)하고 실천에 옮겨 실행(Do)하고, 이러한 실행이 옳은지 그른지 또는 유익한지 해한지를 검증(Check)하여 잘못된 점을 개선(Act)하고 다음번에는 보다 발전된 계획으로 실행하고 검증하여 개선해 나가는 반복적인 사이클이라 할 수 있다. PMBOK은 Project Management Body Of Knowledge의 약자로 각 산업의 프로젝트에 일반적인 관리방법들을 체계적으로 확립하고 틀로 고안한 지식체계이다. 이는 개시(Initiating), 계획(Planning), 실행(Executing), 모니터링과 통제(Monitoring and Controlling), 종료(Closing)으로 이루어진다..
· Undefined
애자일 기법과 폭포수 모델 비교 애자일 방법론은 2000년대 무렵 새롭게 대두된 단어로 기존의 방법론에서 탈피한 새롭지만 강력한 방법론 중 하나이다. 소프트웨어 공학이라는 학문에서는 계획, 요구사항 분석부터 설계, 구현, 테스트 등을 거치면 완벽한 소프트웨어가 될 것이라 생각했다. 하지만 사용자의 요구사항은 빈번하게 변경되고 완벽한 설계라 생각했던 것이 구현함을 통해 실제로 잘못된 길이었다는 것을 알게 되었고 이로 하여금 애자일 방법론이라는 기존의 정통적인 방법론과는 다른 절차가 대두되었다. 쉽게 말해 애자일이란 기존의 워터폴(폭포수) 모델은 자동차를 만드는데 있어 차의 프레임을 구축하고, 바퀴를 설계하고, 다음으로 차량 내부를 설계하고, 좌석을 개선하는 방식과 같이 절차적인 형식을 띄었다. 그러나 애자..
· Undefined
소프트웨어 공학의 출현 배경 공학은 일반적으로 과학이나 수학을 기초로 구조나 기계, 생상 공정, 시스템 등을 생산에 합리적이고 체계적인 방법으로 적용시키는 학문을 의미한다. 이러한 원리 아래 대두된 소프트웨어 공학은 소프트웨어를 분석, 설계, 개발, 테스트, 유지보스 단계를 거쳐 개발하고 이와 관련된 전반적인 방법론 등을 연구하는 분야이다. 소프트웨어가 발전하지만 그에 따른 사용자의 요구는 더욱 급격히 증가되었고 결과적으로 소프트웨어의 위기를 불러왔다. 공학이 없던 당시 소프트웨어 개발은 개발 예산의 초과와 기간의 지연, 프로그래머 개인의 판단과 역량에 의한 소프트웨어 개발 추친, 소프트웨어 품질 문제 등이 있었고 결과적으로 체계적이고 기술적 검토를 거치지 않은 소프트웨어에 대한 신뢰는 무너졌다. 이러한..
· Undefined
시스템 개발 패러다임 4가지 과거 틀이 정해지지 않은 소프트웨어 개발은 이에 위기를 불러왔고 그 결과 소프트웨어 개발 방법론이 등장하게 되었다. 소프트웨어 패러다임으로 우리는 개발에 대한 여러 가지 시각과 관점, 틀을 생각하게 되었고 다양한 생각의 전환으로 목표를 달성하기 위해 필요한 방법, 개발 환경 및 관리에 대한 포괄적인 틀을 고려한 결과 많은 방식 중 대표적인 4가지 방법론이 대두되었다. 폭포수 모델(Waterfall Model) 폭포수 모델은 고전적 라이프 사이클 패러다임이라 불리며 건축과 같은 설계 공학에서 가장 많이 사용되고 있는 기법이다. 소프트웨어 개발에단계적이며 체계적인 순차적 접근법을 사용하여 정의하고 있으며 개념 정립에서 구현까지 하향식 접근 방법을 사용하여 요구사항 분석, 설계같은..
· Undefined
요구사항 명세서와 설계 문서의 차이 요구사항 명세서(Requirements specification)는 요구사항 분석(Requirements Analysis)단계에서 작성되는데 이는 하드웨어나 소프트웨어의 측면부터 시작하여 사용자의 요구사항, 타당성, 비용과 시간 등을 종합적으로 분석하고 이를 산출하여 만들어진 문서이다. 요구사항 명세서는 다른 말로 기능명세서(functional spec..) 또는 목표 문서 (target document)라고도 한다. 반면 설계 문서(design document)는 설계(Design)단계에서 작성되는데 이는 시스템의 안정감과 생명력, 유지 보수에 대한 대비, 품질 향상을 위하여 작성된다. 따라서 요구사항 명세서는 설계 전 소프트웨어 공학에 있어 전반적으로 추상적인 부분..
lasiyan
'Undefined' 카테고리의 글 목록