본문 바로가기
  • Seizure But Okay Developer

전체 글193

코드스피츠 80 디자인패턴 스터디 - 1 1. 도메인 - 의존성 (관련 있는 것들끼리 구분지을 수 있다! 고로 관리하기 쉬워짐)2. 네이티브영역 - 가변성 (네이티브영역 == (IO 영역) 과 인메모리 영역을 분리하는 것)3. 변화율 - 유지보수 (제일 중요, 각각이 바뀌는 이유에 따라 구분해라) 변화율로 나눌 코드를 파일로 분리했다고 생각파일이 변경되지 않도록 최대한 신경써본다, 만일 변경된다면 변화율에 맞지 않게 코드를 짠 것! 문구를 코드로 5초 안에 짤 수 있도록 훈련해라! getBlock => 네이티브를 인메모리로 바꿔주는 메소드 쉬운거 부터 짜라 이들은 의존성이 적기 때문에 앞뒤 영향이 적어 프로그램을 만들 때 편하다. 2019. 2. 12.
6주차 - MVPuser의 요구를 바로 수용할 수 있는 이점이 있으므로 MVP가 각광받고 있음화면구성을 MVP로 만들면 기민하게 요구에 대응할 수 있음, 굉장히 빠르다는 이점이 있음. MVP의 경우 VOprotocol, Commandprotocol 와 같은 인터페이스를 만들어서 사용 업계에서 Model을 공급하는 것을 Service 라 한다. Model에게 원본 데이터를 채우는 것 : Dispatcher View 노가다가 심해지지만 Presenter에 의존하지 않고 빨리빨리 화면을 그려낼 수 있음View를 VO화 시키는 것을 View가 가지고 있음 - MVVMNative의 내용을 추상화해서 View의 변화를 수신MVVM에선 양방향 바인딩이 일어난다(Angular 등)?의 setter에 반응해서 View의 변화가.. 2018. 12. 12.
4주차 함수는 인자와 리턴 값으로 통신하고 메모리의 컨텍스트를 유지하려면 함수간에 컨텍스트를 리턴으로 받고 인자로 주는 것을 반복해줘야 함. 좋은 개발자가 희귀한 이유는? 미묘함을 자세히 이해하는 사람이 적기 때문. 책임과 역할. 이들은 컨텍스트 변화, 역할의 변화, 책임의 변화가 커도 파악을 해내고 프로그래밍을 한국어처럼 표현할 수 있음. => 나는 그러한가? lexical enviroment : 변수 저장 공간, 어휘 함수 간에 인자를 전달하면서 lexical enviroment 가 생기게 되고 이는 일반 변수들의 lexical env 와 다르다(그 함수들만의 공간임) this를 찍으면 위에서 얘기한 lexical env 의 메모리 공간 데이터를 지정해 사용할 수 있음. 메소드 내에서 지역변수나 인자만 사용.. 2018. 11. 28.
케밥 케이스, 파스칼 케이스 Vue에서 컴포넌트들을 나눌 때 key, value 같이 지정하지 않고 적당히 형식을 맞춰 적는다면 알아서 네이밍을 하고 찾아서 쓴다는 것을 알 수 있었다. 예) 타 Component 에서 component 등록할때 이름 : OverallEvaluation.vue 타 Component 의 template에서 사용될 때 이름 : v-overall-evaluation 위에서 보듯이 Vue는 사용자가 직접 지정하지 않아도파스칼케이스(첫 단어를 대문자로 쓰는 표기법) -> 케밥케이스(단어를 하이픈 문자로 구분하는 표기법) 으로 자동으로 네이밍 처리해주고 사용한다는 것을 알 수 있었다. ** 수정 : 하이픈으로 구분하는 표기법은 케밥 케이스(kebab case) 라고 부른다, 이 때까지 스네이크 케이스라고 잘못 .. 2018. 11. 26.
JPA 용어 정리 및 질문드릴 것 정리 JPA란?요약해본다면..기존에 내가 sping을 쓰면서 배운 mybatis 대신 할(기존의 mybatis는 DAO를 거쳐야 했고 이는 생산성 향상에 영향을 미쳤다고 봄) 기술로Hibernate, JPA라고 부른다. 해외에선 이미 mybatis를 누르고 압도적으로 사용되고 있다고 하고 국내의 유수한 기업들도 해당 기술을 사용하고 있다고 한다. JPA의 정의는 ORM을 위한 표준기술로, 여기서 ORM은 RDB가 객체지향적인 특징을 갖도록 해주고 접근할 수 있게 해주는 기술이다. 참고:http://blog.woniper.net/255http://blog.naver.com/PostView.nhn?blogId=noranlemon84&logNo=220774678674&parentCategoryNo=&category.. 2018. 11. 26.
3주차 인자는 적게 쓰는게 좋다 함수형 프로그래밍은 값에 의한 복사(값 컨텍스트라고 함)가 실행이 되는 방식객체지향 프로그래밍은 값에 의한 참조(객체 컨텍스트라고 함)가 실행이 되는 방식 객체지향 프로그래밍은 entry에서만 값에 의한 복사가 허용되야 함. 그 외에는 객체만으로 서로 통신해야 됨. 2018. 11. 21.
Arrays.asList 와 ArrayList 의 차이? 둘의 차이는 타입의 차이(List vs ArrayList) 로도 볼 수 있다. 예제로 보는 것이 더 쉬울 거 같아서 예제로 살펴본다. List list1, list2 = null; Integer[] array = { 5, 7, 9 }; list1 = new ArrayList(Arrays.asList(array));list1.add(11); list2 = Arrays.asList(array);list2.add(11) // error ! 와 같은 예제가 있다고 해보자 먼저 list1은 Integer 타입이고 ArrayList 타입이다. list2는 Integer 타입이고 List 타입이다. 그럼 List 타입과 ArrayList의 차이점은 무엇인가? 간단하다. List는 Interface 이고, ArrayL.. 2018. 11. 17.
좋아요 기능 수정할 때 발생한 문제 발생/해결 비동기로 작성한 sql 문이 동작안할 시에 예외처리를 해주려 하는 도중 오류 발생시 Cannot enqueue Handshake after invoking quit' 와 같은 에러문이 발생하면서 서버가 동작하지 않았다. 이 같은 문제가 발생해서 검색해보니 createConnection을 이미 했는데 다시 하려고 하거나 연결을 end 하기 떄문에 이 같은 문제가 발생하는 것을 알았다.https://stackoverflow.com/questions/14087924/cannot-enqueue-handshake-after-invoking-quit 1. wrapper 클래스로 참고한 쿼리문 비동기 처리 코드가 디비 연결을 아예 끊어버림 - 이 때문에 다른 api를 실행하려면 서버를 아예 죽였다가 다시 켜야함 2... 2018. 11. 13.
게시판 화면 구성하면서 사용한 자료 정리 select 태그 내에 option 태그에선 클릭이벤트가 발생하지 않는다, 대신 change 이벤트를 사용해서 각 옵션을 클릭할 시 효과가 나타나게 해야함https://stackoverflow.com/questions/46260052/using-click-in-select-options-vue-js-2 input 태그에서 돋보기 아이콘을 넣고 싶다면? FontAwesome 에서 제공하는 css 파일을 넣고 해당하는 옵션들을 태그에 사용하면 됨https://teamtreehouse.com/community/how-do-i-put-icons-inside-of-input-fields 2018. 11. 12.