SOLID 클린코드로 유명한 로버트 마틴이 좋은 객체 지향 설계의 5가지 원칙을 정리 - SRP : 단일 책임 원칙 (Single responsibility principle) - OCP : 개방-폐쇄 원칙 (Open/closed principle) - LSP : 리스코프 치환 원칙 (Liskov substitution principle) - ISP : 인터페이스 분리 원칙 (Interface segregation principle) - DIP : 의존관계 역전 원칙 (Dependency inversion principle) SRP 단일 책임 원칙 Single responsibility principle - 한 클래스는 하나의 책임만 가져야 한다. - 하나의 책임이라는 것은 모호한다. - 클 수 있고, ..
소스코드 MainActivity.java package org.techtown.framelayout; import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.ImageView; public class MainActivity extends AppCompatActivity { ImageView imageView; ImageView imageView2; int imageIndex = 0; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanc..
객체 지향 특징 - 추상화 - 캡슐화 - 상속 - 다형성 객체 지향 프로그래밍 - 객체 지향 프로그래밍은 컴퓨터 프로그램을 명령어의 목록으로 보는 시각에서 벗어나 여러개의 독립된 단위, 즉 "객체"들의 모임으로 파악하고자 하는 것이다. 각각의 객체는 메시지를 주고받고, 데이터를 처리할 수 있다. (협력) - 객체 지향 프로그래밍은 프로그램을 유연하고 변경이 용이하게 만들기 때문에 대규모 소프트웨어 개발에 많이 사용된다. 유연하고, 변경이 용이? - 레고 블럭 조립하듯이 - 키보드, 마우스 갈아 끼우듯이 - 컴퓨터 부품 갈아 끼우듯이 - 컴포넌트를 쉽고 유연하게 변경하면서 개발할 수 있는 방법 다형성의 실세계 비유 - 실세계와 객체 지향을 1:1로 매칭 X - 그래도 실세계의 비유로 이해하기에는 좋음 - ..
스프링 프레임워크 - 햭심 기술 : 스프링 DI 컨테이너, AOP, 이벤트, 기타 - 웹 기술 : 스프링 MVC, 스프링 WebFlux - 데이터 접근 기술 : 트랜잭션, JDBC, ORM 지원, XML 지원 - 기술 통합 : 캐시, 이메일, 원격접근, 스케줄링 - 테스트 : 스프링 기반 테스트 지원 - 언어 : 코틀린, 그루비 - 최근에는 스프링 부트를 통해서 스프림 프레임워크의 기술들을 편리하게 사용 스프링 부트 - 스프링을 편리하게 사용할 수 있도록 지원, 최근에는 기본으로 사용 - 단독으로 실행할 수 있는 스프링 애플리케이션을 쉽게 생성 - Tomcat 같은 웹 서버를 내장해서 별도의 웹 서버를 설치하지 않아도 됨 - 손쉬운 빌드 구성을 위한 starter 종속성 제공 - 스프링과 3rd Part..
AOP AOP가 필요한 사항 - 모든 메소드의 호출 시간을 측정하고 싶다면? - 공통 관심 사항(cross-cutting concern) vs 핵심 관심 사항(core concern) - 회원 가입 시간, 회원 조회 시간을 측정하고 싶다면? aop 패키지 생성후 - 안에 TimeTraceAop 클래스 파일 생성 package hello.hellospring.aop; import org.aspectj.lang.ProceedingJoinPoint; import org.aspectj.lang.annotation.Around; import org.aspectj.lang.annotation.Aspect; import org.springframework.stereotype.Component; @Aspect @Com..
안녕하세여 드디어 정보처리기사를 합격을 하게되서 후기를 한번 적어보겠습니다. 시험은 2021년 4월 25일 (일) 13:00분에 시작을 하였습니다. 장소는 신도중학교에서 시험을 보았습니다. 시험은 전반적으로 작년에 비해서 쉽게 나온편이었던것 같습니다. 작년에는 용어의 개념을 적는 문제들이 좀 나왔던 반면 요번에는 대부분이 용어를 적는 문제였고 프로그래밍 문제도 전반적으로 쉬웠던것 같습니다. 코로나 때문에 시험도 연기가 되고 시험공부 기간이 좀 길게 했었지만 붙어서 다행인것 같습니다. 정보처리기사 시험 준비하시는 분들도 좋은 결과 나오시길 바랍니다! 답안은 해당링크에 있습니다. http://www.gisafirst.com/board/n1/view.php?offset=0&tq=1393907668&reqCat..