본문 바로가기

개발기술

(59)
Test 코드 작성 테스트 시작 전 점검Fuctionaly Prototype comes First. 테스트 코드를 아무리 잘짜더라도 특정한 기능이 Missing되는 부분은 테스트 코드로 잡아줄 수가 없다. 우선은 요구하는 기능이 제대로 동작하는지 Manual Testing이 선행되고 CoreFunction이 제대로 동작하는지 확인이 완료된 후에 테스트코드가 의미가 있다. 그렇지 않으면 테스트코드도 다 수정해야됨.테스트의 중요성과거1. 방식 : 자동화하기어려운 sql중심의 코드들이 많아, 테스트케이스를 개발자가 직접 만들고, 기능을 동작시켜보는 식으로 수동적으로 진행.  2.관점 : 해당 방식은 1회성 외주 개발 후 철수하는 방식으로 진행되어, 코드의 품질보다는 기능적 완성도만 점검하는 방식이며 코드의 유지보수성에 대해서는 ..
스프링 MVC 스프링 MVC의 개념, 흐름 MVC는 R&R을 명확하게 하기 위해서 Layer을 나누는 디자인 패턴이다. Model은 데이터객체, View는 화면처리, Controller은 로직처리 후 모델과 뷰를 지정하는 역할을 분담한다.   전체 프로세스 흐름은 Disptcher servelet에서 request를 최초로 접수받고 dispatcher은 request를 url과 http method을 참고하여 어떤 controller(handler)에 request를 전송할지 판단한다. 이 판단은 각 spring method에 붙어있는 @requestmapping을 통해서 mapping 해준다. 이후 controller로 보내면 서비스 호출 등을 통해, request를 처리한 후, 사용할 뷰의 정보를 dispatche..
좋은 개발자가 되려면 ( Focus on Fundamental, API : JIT learning) Focus on Core Concepts; Design Principle/CS Knowledge etc,  API : Just in time learning Question : so to be a good programming , it is better to focus on learning principles and design pattern that are applicable all around rather than usage of api. is it commonly recommended practice? Answer :Yes, that is a commonly recommended practice and a highly effective strategy for becoming a proficient ..
스프링 부가기능 (Resource, AOP, 유효성검증, 데이터바인딩,spel) 외부자원 가져오기앱은 단순히 내부코드로만 동작할 수 없고 결국 자원을 끌어올 때가 있다. 외부 API, 외부 url, 외부 이미지, 내부 file system의 자원, 내부 패키지내 클래스라던지 등등 자원을 사용할 필요성이 있다. java 기본 라이브러리에서는 자원을 가지고오는 기능들이 충분하지않고 사용하기 어렵게 되어있어 스프링은 resource interface를 통해서 이러한 기능들을 제공한다. 각 자원의 종류별로 resource interface를 상속하는 구체적인 구현체들이 있으며 이를 사용하여 resouce를 다룬다. 그리고 스프링컨테이너인 applicationcontext에 구현되어있는 resourceloader을 사용하여서 자원들을 불러온다. 마찬가지로 applicatiocontext같은 ..
데이터 관계와 모델링, ERD작성 데이터 모델링비즈니스를  추상화, 단순화, 명확화 표기하기 위해서 분석하고 데이터화 시키는 것, 정보시스템을 구축하는 과정에서 계획.분석.설계 단계에서 업무를 분석하고 설계할 때 또한, 이후 구축.운영 단계에서 변경과 관리할 때 사용됨. 데이터 모델링표기기법1. 피터첸 : 엔터티를 사각형, 엔터티간 관계를 마름모, 엔터티의 속성을 타원형 으로 표현.2. I/E Crow's Foot (까마귀발) :  데이터 모델링 개념엔터티 -객체, 실체, 사람, 장소, 물건, 사건, 개념 등의 명사에 해당.예를 들어,"학생” 이라는 엔터티는 학번, 이름, 학점, 등록일, 생일, 주소, 전화번호 등의 속성으로 특징지을 수 있음속성 -  업무에서 필요로 하는 인스턴스에서 관리하고자 하는 의미상 더이상 분리되지 않는 최소의 ..
SQL문 정리 SQL문SQL : DBMS와 대화하기위한 특수목적의 언어로 데이터 그 자체 혹은 데이터를 관리하는 계정, 인스턴스를 관리한다SQL은 1. 데이터정의어 (초기화) 2. 데이터 조작어 (활용) 3. 데이터 제어(권한부여)어로 이루어져있다. SQL문 Keyword 정리-- or # : comment out"" : quotation for identifier'' :  quotation for string literal in sql% : like 연산자로 모든 단어를 지칭한다. (a% : a로 시작하는 모든 단어, %a% : a를 포함하는 모든단어)_ : like 연산자로 한글자를 지칭한다 (a_ : a로 시작하는 모든 두글자)LIKE IN , NOT LIKE 등으로 응용가능1. 데이터 정의어(DDL: Data ..
프론트엔드 설계 고려사항 동기화 비동기화동기화Form Submission (Method 1): Involves a traditional HTTP request-response cycle where the frontend sends data via form submission, and the backend processes the data and typically returns a new page or a redirect response.When you use an HTML form to submit data, the browser sends an HTTP request to the server. This request can be either a GET or POST request, depending on how you conf..
프론트엔드 자바스크립트 & http request JavaScript문서의 내용와 구조를 잡아주는 HTML은 한번 출력된 문서는 내용이 바뀌지 않는 정적인 언어이기에, JavaScript는 문서를 동적으로 바꿔 사용자와 상호작용하기 위해 도입된 언어이다.   callback functions : These functions are expected to accept parameters that are predefined by the context in whichthey are used. if A function use B function as callback, B function's parmeter is defined by A function.  A callback is a function that is passed as an argument to ano..