멋진 개발자/ETC..

Open Authorization인터넷 사용자들이 비밀번호를 제공하지 않고, 다른 웹사이트 상의 자신들의 정보에 대해 웹사이트나 애플리케이션의 접근 권한을 부여할 수 있는 개방형 표준 방법이다. 이러한 메커니즘은 구글, 네이버, 카카오 등이 사용하고 있으며 타사 애플리케이션 및 웹사이트의 계정에 대한 정보를 공유할 수 있도록 허용해 준다. OAuth 프로토콜웹 서비스를 개발할 때 인증 과정을 구현할 것인가는 가장 중요한 문제이다.인증은 보안에 있어서 가장 핵심적인 문제이며, 잘못하면 사용자의 소중한 개인 정보가 유출될 수 있는 위험도 있기 때문에 개발자는 굉장히 신중히 설계를 해야 한다. 하지만 OAuth는 개발자가 직접 인증 과정을 구현하는 것이 아니기 때문에 개발자의 고민을 덜어주며 인증 구현을 간편..
단위테스트 단위 테스트를 작성해야 하는 핵심적인 이유는 다음과 같다. 코드를 수정하거나 기능을 추가할 때 수시로 빠르게 검증할 수 있다. 리팩토링 시에 안정성을 확보할 수 있다. 개발 및 테스팅에 대한 시간과 비용을 절감할 수 있다. 테스트 코드를 작성하면 우리가 작성한 코드들에 대해 수시로 빠르게 검증을 받을 수 있으며, 유지보수 및 리팩토링을 할 때에도 안정성을 확보할 수 있다는 장점이 있다. 하지만 그것보다 큰 장점으로는 개발 및 테스팅에 대한 시간과 비용을 절감할 수 있다. 우리는 개발이 끝난 뒤에 문제가 없는지 확인하기 위해 애플리케이션을 실행하고, 직접 수동 테스트를 진행해야 한다. 단위 테스트를 작성하지 않은 코드들은 그렇지 않은 코드들보다 버그가 있을 확률이 높은데, 직접 테스트하는 비용이..
프로세스 (Process) 프로세스는 실행 중인 프로그램이라고 할 수 있다. 프로그램은 컴퓨터에 저장되어 있는 코드 덩어리이며, 아직 실행되지 않은 정적인 상태를 말한다. 프로그램을 더블클릭하여 실행하면 메모리에 올라가고 동적인 상태가 되는데 이를 보고 프로세스라고 한다. 위 그림과 같이 프로세스는 Code, Data, Stack, Heap의 형식으로 독립된 메모리 영역을 할당한다. 각각 독립된 메모리 영역을 할당해 주기 때문에 프로세스는 다른 프로세스의 변수나 자료에 접근할 수 없다. 스레드 (Thread) 스레드는 프로세스가 할당받은 자원을 이용하는 실행 흐름의 단위이다. 운영체제의 스케줄러에 의해 독립적으로 관리될 수 있는 프로그래밍된 명령의 가장 작은 시퀀스이다. 하나의 프로세스는 하나 이상의 스..
좋은 설계란 시스템의 요구 사항이나 변경사항이 있을 때, 영향을 받는 범위가 적은 구조를 말한다. 그래서 시스템에 예상하지 못한 변경사항이 발생하더라도, 유연하게 대처하고 이후에 확장성이 있는 시스템 구조를 만들 수 있다. 객체 지향 프로그래밍을 설계하면서 SOLID OOP 설계 원칙을 적용하게 되면, 코드를 확장하고 유지보수가 쉬워지며, 불필요한 복잡성을 제거해 개발의 생산성을 높일 수 있다. SOLID SOLID 원칙이란 객체 지향 설계에서 지켜줘야 할 5개의 소프트웨어 개발 원칙을 말한다.(SRP, OCP, LSP, ISP, DIP) SRP(Single Responsibility Principle) : 단일 책임 원칙 OCP(Open-Closed Principle) : 개방 폐쇄 원칙 LSP(Lis..
객체 지향 프로그래밍(OOP) 프로그래밍에서 필요한 데이터를 추상화시켜 상태와 행위를 가진 객체로 만들고, 객체들 간의 상호작용을 통해 로직을 구성하는 프로그래밍 방법이다. 객체란? 객체는 프로그램에서 사용되는 데이터 도는 식별자에 의해 참조되는 공간을 의미하며 값을 저장할 변수(상태)와 작업을 수행할 메서드(행위)를 서로 연관된 것들끼리 묶어서 만든 것이다. 객체 지향 프로그래밍은 레고와 비슷하다. 객체가 레고의 조각이 될 것이고, 레고의 조각을 조립해서 무언가를 만드는 방식이 객체 지향 프로그래밍이라고 할 수 있다. 장점 코드 재사용이 용이 : 남이 만든 클래스를 가져와서 이용할 수 있고 상속을 통해 확장해서 사용할 수 있다. 유지보수 용이 : 수정해야 할 부분이 클래스 내부에 멤버 변수 혹은 메서드..
개발의 WinG
'멋진 개발자/ETC..' 카테고리의 글 목록