반응형 전체 글39 앵귤러 간단 정리 앵귤러(Angular)프레임워크 -컴포넌트기반으로 개발, 트리구조의 계층을 가진다. 컴포넌트 -컴포넌트는(ES6, TypeScript) Class 이다. -view에 노출할 값이나 이벤트 처리 로직 등을 이 클래스 안에서 작성한다. -하나의 뷰를 관리하는 뷰의 1:1로 매칭되는 컨테이너와 같다. -Angular App은 컴포넌트 트리를 반드시 갖는다. -컴포넌트 트리의 최상위 루트, 컴포넌트를 관례적으로 AppComponent라 한다. -View를 컴포넌트로 나누는 기준은 없다. (재사용성, 페이지단위 등등 으로 나눌수있다.) @ 는 데코레이터 -데코레이터는 대상에 메타데이터 제공 및 Framework에게 정보를 주는 역할을 한다. (자바에서 어노테이션이랑 동일하다고 보면된다.) -@Component에는.. 2019. 8. 20. OOP, 객체 지향 프로그래밍(Object-Oriented Programming) * 객체 지향 프로그래밍이란 프로그램을 객체 단위로 작성하는 방법이다. 프로그램은 객체들로 구성되고 객체들은 속성과 기능을 가지고 있다. 객체 지향 기법들의 특징 --------------------------- * 캡슐화(encapsulation) - 관련된 데이터와 알고리즘(코드)이 하나의 묶음으로 정리되어 있어야 한다. 데이터와 알고리즘을 캡슐에 넣어서 포장한다는 것을 의미한다. 객체 지향에서는 이 캡슐을 클래스라고 부른다. 캡슐화는 데이터를 감추고 외부와의 상호작용은 메소드를 통하는 방법이며, 내부의 데이터를 캡슐로 보호하는 역할 을 한다.(정보 은닉-information hiding) * 상속(inheritance) - 기존의 코드를 재활용하기 위한 기법으로 이미 작성된 클래스를 받아 새로운 클.. 2019. 1. 8. 빌더 패턴 package 으아아; /* * 코드 가독성을 높여주고 객체의 일관성을 높여준다. * 변경 불가능 클래스를 만들수 있어 스레드의 안정성을 보장해준다. * 빌더 패턴은 인자가 많은 생성자나 대부분의 인자가 선택적인 인자인 상황에 유용하다. * 인자의 순서에 상관이 없어진다. * 불필요한 생성자를 만들지 않는다. */ public class Man { private String name; private String nickname; private int age; private int height; private Man(String name, String nickname, int age, int height){ super(); this.name = name; this.nickname = nickname; th.. 2018. 12. 26. 싱글톤 패턴 예제 package 싱글톤패턴; public class SingletonTest { // private static SingletonTest instance = new SingletonTest(); // 인스턴스 객체화 // LazyHolder 이용 동기화 private static class LazyHolder { static final SingletonTest INSTANCE = new SingletonTest(); } private String name; private int age; private SingletonTest() { // 이걸 사용함으로 다른 클래스에서 생성불가 } // ----synchronized 이용 동기화---- // public static SingletonTest getInsta.. 2018. 12. 17. 팩토리 패턴 예제 abstract class Factory2 { public abstract String getA(); public abstract int getB(); @Override public String toString() { return "ㅇㅇ" + getA() + "ㄴㄴ" + getB(); } } class Test extends Factory2 { private String A; private int B; public Test(String A, int B) { this.A = A; this.B = B; } @Override public String getA() { return this.A; } @Override public int getB() { return this.B; } } class TestFacto.. 2018. 12. 17. 더블링크드 리스트 예제 public class listNode { // 첫노드필드 private int data = 0; private Node llink; private Node rlink; // 이전 노드 정보 private class Node{ private int data; private Node next; private Node prev; public Node(int input) { this.data = input; this.next = null; this.prev = null; } } //rlink 새로운 노드 지정 public void addFirst(int input) { Node newNode = new Node(input); newNode.next = rlink; if(rlink != null) rlink.p.. 2018. 12. 17. 자바에서 sql 쓸수있는 종류와 장단점 a.관계형데이터베이스(SQL) 장점 : 다양한 용도로 사용이 가능하고, 일반적으로 높은 성능을 보여주고 있다.(범용적/고성능) 데이터의 일관성을 보증한다. 정규화에 따른 갱신 비용 최소화 단점 : 대량의 데이터 입력 처리, 컬럼 확장의 어려움, 단순히 빠른 결과 갱신이 발생한 테이블의 인덱스 생성 및 스키마 변경 *** b.NoSQL 데이터베이스(Not-Only SQL) 관계형DB보다 덜 제한적인 일관성 모델을 이용한다. Key,Value형태로 저장되고 키를 사용해 데이터 관리 및 접근을 한다. 장점: 대용량 데이터, 데이터 분산 처리, Cloud Computing 빠른 읽기/ 쓰기 속도 , 유연한 테이터 모델링 단점: 데이터 일관성이 항상 보장되지 않는다, 다양하고 복잡한 데이터 쿼리는 불가능하다. 2018. 12. 17. 디자인 패턴 a.스트래티지 패턴(Strategy Pattern) - 알고리즘군을 정의하고 각각을 캐슐화하여 교환해서 사용할 수 있도록 만든다. - 알고리즘을 사용하는 클라이언트와는 독립적으로 알고리즘을 변경할 수 있다. - 구성을 사용한다. - 일반적으로 서브클래스를 만드는 방법을 대신하여 유연성을 극대화하기 위한 용도로 쓰인다. - 예: QuarkBehavior & FlyBehavior *** b.옵저버 패턴(Observer Pattern) - 한 객체의 상태가 바뀌면 그 객체에 의존하는 다른 객체들한테 연락이 가고 자동으로 내용이 갱신되는 방식으로 일대다(one-to-many) 의존성을 정의한다. - 주제(Subject) & 옵저버(Observer) - Observable & Observer: Observable.. 2018. 12. 17. 피보나치 수열 시간복잡도 개선 \` F(n,r){ if(n0) return r[n]; //이부분을 거치면서 기존 계산한 결과가 있으면 재귀호출x 그대로 반환 return r[n] = F(n -1, r) + F(n-2, r); } f1 = 0; f2 = 1; for(i=2; i 2018. 12. 17. 이전 1 2 3 4 5 다음 반응형