Study/팁9 SOILD원칙?? SOLID원칙이란? 로버트 마틴이 정리한 객체 지향 설게의 5가지 원칙을 의미 S(SRP; Single Responssibility Principle) 단일 책임의 원칙 하나의 객체는 하나의 책임만 갖어야 한다. 응집도 : 모듈 내보의 기능적인 응집도 ex) 카메라라는 기능 안에 카메라의 모든 기능이 모여있어야(응집되어야) 한다. 결합도 : 모듈 간의 상호 결합 정도 하나의 객체는 하나의 기능만 하도록 설계하여 다른 기능들과의 상호관계가 없이 만들어야 한다. ex) 시스템에 변화가 생겼을시 결합도가 높으면 다른 기능을 수정 할 때 고려해야 할 사항이 많아진다. 응집도는 높게, 결합도는 낮게 설계해야 한다. O(OCP; Open Closed Principle) 개방 폐쇄 원칙 확장에 대해서는 개방적, 변경.. Study/팁 2024. 1. 13. OSI 7계층 TCP/IP 4계층 OSI 7 계층이란?OSI 7 계층은 네트워크 통신이 일어나는 과정을 7단계로 나눈 국제 표준화 기구(ISO)에서 정의한 네트워크 표준 모델아래 그림에서 아래부터 1계층(물리 계층) ~ 7계층(응용 계층)으로 구성되어 있다.또 그림과 같이 각 계층을 지날 때마다 각 계층에서 Header가 붙게되고 수신측은 역순으로 헤더를 분석하게 된다. 🌱 1계층 - 물리계층(Physical Layer)주로 전기적, 기계적, 기능적인 특성을 이용해서 통신 케이블로 데이터를 전송하는 물리적인 장비단지 데이터 전기적인 신호(0,1)로 변환해서 주고받는 기능만 할 뿐이 계층에서 사용되는 통신 단위 : 비트(Bit)이며 이것은 1과 0으로 나타내어지는, 즉 전기적으로 On, Off 상태장비 : 통신 케이블, 리피터, 허브 등 .. Study/팁 2023. 4. 24. 비즈니스 로직?? 도메인 로직?? 서비스 로직?? 비즈니스 로직을 분리해라! 비즈니스/도메인 로직은 다른 계층에 의존해서는 안된다! 좋은 설계에 대해 얘기할 때 이런 말을 정말 많이 듣는다. 대충은 무슨 말인지 알겠지만 디테일하게는 이해하고 있지 않았다. 근데 DB에서 특정 조건의 데이터를 가져오는 코드는? 서버에서 가져온 데이터를 파싱하는 코드는? 화폐 단위를 다른 화폐로 바꾸는 코드는? 사용자가 검색한 데이터가 실제로 있는지 확인하는 코드는? 도메인, 비즈니스의 의미 도메인 로직, 비즈니스 로직이라는 말은 거의 동의어처럼 쓰인다. 여기서 눈에 들어오는 것은 '도메인'과 '비즈니스'라는 단어다. 소프트웨어 공학에서 도메인, 비즈니스라는 말은, '소프트웨어가 풀고자하는 현실 세상의 문제'를 가리킨다. 다시 말해 소프트웨어가 존재하는 이유, 목적이다. 은.. Study/팁 2023. 4. 18. [Vim] Plugin 설치 및 default 환경설정 Vundle 설치 방법 우선 아래 주소를 clone하여 vundel을 설치해준다. git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim 설치 후 .vimrc를 만들어 주어야 한다. vi ~/.vimrc 만들어진 .vimrc에 아래 문장을 입력 set nocompatible " be iMproved, required filetype off " required set rtp+=~/.vim/bundle/Vundle.vim call vundle#begin() " let Vundle manage Vundle, required Plugin 'gmarik/Vundle.vim' call vundle#end() " required f.. Study/팁 2023. 4. 11. 마우스 따라다니는 텍스트 만들기 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 HTML: Move your mouse over me! jQuery: $(document).mousemove(function(event) { $("#text").css({ left: event.pageX, top: event.pageY }); }); CSS: #text { position: absolute; } Colored by Color Scripter cs Study/팁 2023. 2. 1. Java, Call by Value? Reference? 추가로 도움이 될만한 글 -> https://shanepark.tistory.com/380 Overview Java 에서 메서드를 호출 시 파라미터를 전달하는 방법에 대해 알아봅니다. 순서는 다음과 같이 진행합니다. Call by Value, Call by Reference 차이 Java 에서의 파라미터 전달 방법 JVM 메모리에 변수가 저장되는 위치 원시 타입 (Primitive Type) 전달 참조 타입 (Reference Type) 전달 1. Call by Value, Call by Reference 메서드를 호출할 때 파라미터를 전달하는 방법에는 두 가지가 있습니다. 1.1. Call by Value Call by Value 는 메서드를 호출할 때 값을 넘겨주기 때문에 Pass by Value 라.. Study/팁 2022. 12. 6. 절대경로 / 상대경로 / 경로설정방법 1. 절대경로 파일이 위치한 해당 고유주소값의 풀네임 ex) c:\web\study\text.txt / -> (루트) 2. 상대경로 현재 열려 있는 파일을 기준으로 찾고자 하는 위치 ./ -> 현재폴더 ../ -> 상위폴더 ex) text.txt파일의 상위폴더에 있는 cat.png파일을 찾으려 한다면 -> ./../cat.png 라고 명시 3. 절대 or 상대 경로설정 파일 or 폴더명 맨 앞에 ' / ' 를 붙이면 절대 경로로 인식한다. 파일 or 폴더명 맨 앞에 ' / ' 를 생략하면 상대 경로로 인식한다. Study/팁 2022. 12. 5. length 와 length( ) 와 size( ) 의 차이 Study/팁 2022. 9. 28. (이클립스) System.out.println(); 빠르게 치는 팁! Study/팁 2022. 9. 3. 이전 1 다음 💲 추천 글 728x90 반응형