Programming
[2020 정보처리기사 실기 기출] 예상 문제 목차
[2020 정보처리기사 실기 기출] 본 기출 예상 문제 목차 글은 시나공 기출 문제와 개념을 토대로 작성한 목차입니다. 2020년에 NCS 기반으로 변경된 정보처리기사 실기는 기존 5과목에서 총 12과목으로 변경이 되었습니다. 1. 요구사항 확인 2. 데이터 입출력 구현 3. 통합 구현 4. 서버 프로그램 구현 5. 인터페이스 구현 6. 화면 설계 7. 어플리케이션 테스트 관리 8. SQL 응용 9. 소프트웨어 개발 보안 구축 10. 프로그래밍 언어 활용 11. 응용 SW 기초 기술 활용 12. 제품 소프트웨어 패키징 총 12과목인데, 기존 필기의 내용이 80~90% 정도 섞여있는 느낌이었습니다. 따라서 이번 실기에 대해서는 별도로 요약 정리를 진행하지는 않고, 기출예상문제를 목차별로 나눠서 필답과 약술..
[2020 정보처리기사 실기 요약] PDF 파일
[2020 정보처리기사 실기 요약] 본 정리 글은 NCS기반으로 새로 바뀐 총 12과목을 요약한 PDF 파일입니다. 출처는 시나공이고 요약집 PDF 파일을 첨부합니다. 요약집은 참고용으로만 사용해주시고, 본격적으로 공부를 하시려면 서적을 구매하는 것을 추천해드립니다! 시나공 서적 - 2020 정보처리기사 실기 2021년도 버전으로 정보처리기사 실기를 참고해서 전체 과목에 대한 요약글을 작성했습니다 정리를 잘 해놓아서 이쪽을 참고해주시면 되겠습니다. https://narup.tistory.com/174 2021 정보처리기사 실기 요약(전체)(20210707 수정) 2021 시나공 정보처리기사 책을 참고로 작성하고 있습니다. 요약 내용이 추가될 때마다 수정하고 있습니다. 필자는 이번에 3번 째 정보처리기사 ..
WPF Fody 사용 방법
WPF Fody 1. 개요 WPF의 MVVM 패턴으로 코드를 작성하면서 변수 마다 get, set메서드를 작성하고 PropertyChange 이벤트 알림을 호출하는 방법이 상당히 비효율적이라고 느껴졌습니다. 이러한 변수들이 한 두개가 아니고 수십개, 수백개로 늘어나게 되면… 코드의 구조가 바뀌게 되면 이러한 모델 데이터도 바꾸어야 하기 때문에 코드 수정량이 많아집니다. 최근 Java의 Lombok이라는 다이어트 코드 라이브러리를 사용하면서 WPF에서도 위와 같은 코드 다이어트가 가능하지 않을까라는 생각에 조금 찾아보았는데 Fody라는 라이브러리를 발견했습니다. 처음에는 DevExpress의 Poco 라이브러리가 있어서 Telerik환경에서 poco를 사용할 수 있지 않을까 생각해보았지만 Fody라는 좋은..
Eclipse 4 RCP 정리
Eclipse 4 RCP 정리 1. Eclipse e4 install https://download.eclipse.org/e4/snapshots/org.eclipse.e4.tools/latest/ Help – Install new software를 통해 위의 URL을 입력하고 tool들을 모두 체크한 다음 설치를 해주면 됩니다. 이클립스 최신 버전을 설치했을 경우 e4가 자동적으로 설치가 되어있을 수 있지만, Spy와 관련된 기능들은 설치가 되어 있지 않을 수가 있어 설치를 진행해줍니다.(현재 이클립스 버전 2020-06 (4.16.0)) 2. Create Project 기존 RCP와 유사하게 Plug-in Project로 프로젝트를 생성합니다. 이클립스 버전은 3.5이상으로 설정해주고, 이용할 플러그인..
[Java] Lombok Annotation 정리
Lombok Annotation 정리 Lombok 라이브러리에서 제공하는 Annotation 중 가장 많이 사용되는 Annotation을 정리해보았습니다. @Getter @Setter @ToString @AllArgsConstructor @NoArgsConstructor @Builder public class User { private int id; private String name; private int age; private String address; @Setter(AccessLevel.PROTECTED) private int grade; public void setGrade(int grade) { this.grade = grade; } } @Getter : get메서드를 자동으로 정의합니다. @..
[Java] Lombok Setter Custom
Lombok Setter Custom Lombok을 사용할 경우 get/set 메서드가 자동적으로 생성이 되는데, 사실상 프로그래밍을 하게 되면 set함수에 특정한 알고리즘이 들어가야할 경우가 있습니다. 이때 set함수를 수정해야하는데, Lombok은 자동으로 Set함수를 생성을 해버려서 답답한 상황이 생길 수가 있는데요. 사실상 여기에 어노테이션을 한 줄만 추가하면 set함수를 Custom할 수 있게 됩니다. @Getter @Setter @ToString public class User { private int id; private String name; private int age; private String address; private int grade; } 기본 코드가 위처럼 설정되어 있고, g..
[Java] Lombok 설치 방법
Lombok 설치 방법 먼저, Lombok이란 프로그래밍을 할 때 get / set메서드, toString, 생성자 등의 반복되는 코드를 줄여주는 코드 다이어트 라이브러리입니다. Model이 몇 개가 안된다면 상관없지만, 프로젝트가 커지고 사용하는 데이터가 복잡해질수록 데이터를 표현하는 모델의 작성에서 반복되는 코드가 많이 발생할 수 있습니다. 코드의 반복성 -> 즉, 당연히 반복성을 줄여야겠죠? Lombok은 이러한 반복적인 코드를 줄이기 위해 여러가지 어노테이션을 제공하고 이를 기반으로 코드를 컴파일 과정에서 생성해 주는 방식으로 도와주는 라이브러리입니다. 1. Lombok 다운로드 Lombok 사이트 – Download에서 jar파일을 다운받고 jar파일을 실행하면 됩니다. https://proje..
[Java] Netty Client
Netty Client 1. Maven Depedency 추가 io.netty netty-all 4.1.16.Final Netty 라이브러리를 이용하기 위한 디펜던시를 추가합니다. 2. Client Netty Client를 구성하기 위해 3가지 기초 설정이 필요합니다. EventLoopGroup 생성과 Bootstrap 생성 및 구성, ChannelInitializer 생성입니다. Netty Server를 구성하기 위한 설정과 많이 비슷합니다. public NettyClient() throws InterruptedException { EventLoopGroup group = new NioEventLoopGroup(); try { Bootstrap clientBootstrap = new Bootstrap(..
[Java] Netty Server
Netty Server 1. Maven Depedency 추가 io.netty netty-all 4.1.16.Final Netty 라이브러리를 이용하기 위한 디펜던시를 추가합니다. 2. Server Netty 서버를 구성하기 위해 3가지 기초 설정이 필요합니다. EventLoopGroup 생성과 ServerBootstrap 생성 및 구성, ChannelInitializer 생성입니다. public class NettyServer { public NettyServer() throws InterruptedException { EventLoopGroup group = new NioEventLoopGroup(); try{ ServerBootstrap serverBootstrap = new ServerBootst..
Netty 파이프라인
Netty 파이프라인 각 Netty SocketChannel에는 ChannelPipeline이 있고, ChannelPipeline에 ChannelHandler 인스턴스 목록이 포함 됩니다. ChannelHandler인터페이스는 두 개의 서브 인터페이스를 가지고 있습니다. ChannelInboundHandler와 ChannelOutboundHandler가 존재합니다. 처음으로 데이터가 수신되면 SocketChannel에서 ChannelInboundHandler으로 데이터가 전달됩니다. ChannelInboundHandler에서 데이터가 처리가 되면 그 다음 ChannelInboundHandler로 전달되며 마지막에 Application에 도달합니다. ChannelInboundHandler는 파이프 라인의 ..