닥치고 코딩 85

프로그래밍 용어 정리

객체 객체(Object)란 물리적으로 존재하거나 추상적으로 생각할 수 있는 것 중에서 자신의 속성을 가지고 있고 다른것과 식별 가능한 것. 객체는 속성과 동작으로 구성되어 있다고 보면 되는데 자바에서는 이 속성과 동작을 각각 필드(field) 와 메소드(method) 라 함. 캡슐화(Encapsulation) 캡슐화란 객체의 필드, 메소드를 하나로 묶고, 실제 구현 내용을 감추는 것 외부 객체는 객체내부의 구조를 알지 못하며 객체가 노출해서 제공하는 필드와 메소드만 이용 이렇게 캡슐화를 하는 이유는 외부의 잘못된 사용으로 인해 객체가 손상되지 않도록 하기 위함 상속(Inheritance) 상속이란 객체 지향 프로그래밍에서 부모역할의 상위객체가 자기가 가지고 있는 필드와 메소드를 자식역할의 하위 객체에게 ..

용어정리 2020.08.29

파이썬 웹 프레임워크(Python web framework)

프레임워크는 재사용 가능한 코드 또는 일반적인 작업을 위한 확장기능을 제공하여 신뢰할 수 있는 확장성 및 유지보수로 웹 애플리케이션 구축시 개발자의 작업을 더 쉽게 만드는 코드 라이브러리 라고 생각하면 쉽다. 그 중에서도 가장 인기있고 많이 쓰이는 프레임워크가 바로 Django와 Flask이다. 장고 프레임워크 - 강렬함 Django Framework 장고(Django) 프레임워크는 파이썬 프레임워크 중 가장 인기가 많고 널리 쓰이는 프레임워크이다. 굳이 자바로 비교하자면 파이썬 내에서 spring급 존재 위치 신속한 개발과 깨끗하고 실용적인 디자인을 장려하는 고수준의 파이썬 웹 프레임워크이며 장고를 사용하면 보다 빠르게 적은 코드로 더 나은 웹 응용 프로그램을 만들 수 있다. 장고의 큰 장점 중 하나는..

python 2020.08.28

정규식

정규식(Regular expressions, Regex 또는 Regexp)은 특정 검색 패턴(ASCII 또는 유니코드 문자의 시퀀스)에 대한 하나 이상의 일치 항목을 검색하여 텍스트에서 정보를 추출하는데 매우 유용합니다. 유효성 검사에서 문자열 파싱 및 대체, 데이터를 다른 형식으로 변환 및 웹 스크래핑에 이르기까지 다양한 응용분야가 있습니다. 가장 흥미로운것 중 하나는 정규식을 학습한 후에는 거의 모든 프로그래밍 언어(Javascript, Java, VB, C#, C, C++, Python, Perl, Ruby, Delphi, R, Tcl 등등)에서 동일하게 사용할 수 있다는 것입니다. 엔진이 지원하는 문법버전 이나 최신특징에 따라서 약간의 차이만 있을 뿐입니다. 자, 이제 몇가지 예제와 설명을 통해 ..

기타 2020.08.21

rsync 명령어로 파일복사

rsync 명령어 기본 rsync : Remote Sync의 줄임말 원격 또는 로컬에 파일을 복사하는 명령어. rcp 그리고 scp와 같이 원격에 파일을 복사할 때 사용하는 기본 내장 명령어입니다. 원격 컴퓨터에 파일을 전달할 수 있을뿐만 아니라 로컬에 있는 파일로 복사도 가능합니다. 옵션이 정말 다양하게 많으며 많은 옵션들을 이용해 다양한 기능들을 활용할 수 있습니다.(symlink 유지, 권한 유지 그리고 파일 날짜 유지와 같은 기능들) rsync의 기능상 장점들 원격 시스템으로부터 파일을 효율적으로 복사하거나 동기화 할 수 있다. Link, device, 파일의 소유자와 그룹권한등 파일의 부가정보도 복사할 수 있다. scp보다 빠르다. rsync는 remote-update 프로토콜을 이용해서 차이가..

리눅스 2020.08.14

SQLD 3일만에 합격한 후기

일단 합격인증! 37회 sqld는 코로나로 1차는 취소되고 밀려서 2차인 5월에 치뤄짐 공부할 시간 많아졌다고 안심하다가 생각해보니 시험 3일전... 그때의 생각 나에겐 아직 3일의 시간이 있다. 1일은 1과목공부 2일은 2과목공부 3일은 기출문제를 하루종일 풀면 되겠다! 라고 생각했는데 1일을 계획만세우고 어떻게 공부하면 좋을지 찾아보는데 써버렸다. 이 글을 보는 여러분도 이 글만 읽고 바로 공부하세요. 어차피 시험공부 다똑같음 외우고 암기하고 풀기 아무튼 2일만에 시험붙은 후기 짧게간다. 참고로 책은 시나공 썼는데 시험볼때 시나공 개쓰레기네 했는데 막상붙고보니 딱 붙을점수는 나오는듯..? 그래도 노랭이 추천. 이번 시험에 처음보는 단어나 문제들이 너무많았음. 1과목 빠르게 한번 훑기 1시간 -> 문제..

기타 2020.08.11

[LINUX] FIND 로 파일,폴더 찾기 지우기

find 명령어 find [OPTION...] [PATH] [EXPRESSION...] OPTION -P : 심볼릭 링크를 따라가지 않고, 심볼릭 링크 자체 정보 사용. -L : 심볼릭 링크에 연결된 파일 정보 사용. -H : 심볼릭 링크를 따라가지 않으나, Command Line Argument를 처리할 땐 예외. -D : 디버그 메시지 출력. EXPRESSION -name : 지정된 문자열 패턴에 해당하는 파일 검색. -empty : 빈 디렉토리 또는 크기가 0인 파일 검색. -delete : 검색된 파일 또는 디렉토리 삭제. -exec : 검색된 파일에 대해 지정된 명령 실행. -path : 지정된 문자열 패턴에 해당하는 경로에서 검색. -print : 검색 결과를 출력. 검색 항목은 newline..

리눅스 2020.08.10

qmail

qmail은 메일링 리스트에서 논의되고 있다. 새로운 버전 공지는 qmail 알림 메일링 리스트에서 받아볼수 있다. 현재 qmail의 마지막 버전은 qmail-1.03.tar.gz 이며 다음에서 받을 수 있다. 관련 패키지: djbdns, qmail과 사용하기를 권장하는 DNS 소프트웨어; ezmlm, 사용하기 쉽고, 빠른 메일링 리스트 관리 도구; ucspi-tcp, SMTP 서버를 위한 매우 빠른 inetd의 대체 프로그램과 RBL-목록 사이트를 사용해 스팸 메일 거부에 이용할 수 있는 도구가 포함되어 있다; serialmail, 시리얼 연결을 통해 메일을 전달하는 도구들 (AutoTURN을 지원함); qmailanalog, qmail의 로그를 분석할 수 있는 로그 분석기; dot-forward, q..

기술블로그 2020.07.08

우분투 해외ip ssh차단

우분투에서 해외ip ssh접속을 차단하기. 1. GEOIP DATABASE 설치 geoiplookup 명령어와 GeoIP country (free) database를 설치합니다. $ sudo apt-get install geoip-bin geoip-database 잘 설치 되었는지 다음과 같이 테스트를 해본다. $ geoiplookup 8.8.8.8 GeoIP Country Edition: US, United States 위와같이 US, United States 가 출력된다. 2. SHELL SCRIPT 작성 이 Shell Script는 접속자의 ip 주소를 GeoIP database와 비교하여 접속지역이 KR인지 유무에 따라 ALLOW와 DENY를 리턴해준다. 또한 이러한 메세지를 logger를 이용해..

리눅스 2020.03.10

CURL 이란? CURL사용법

CURL 이란? cURL = Client URL 클라이언트에서 커맨드 라인이나 소스코드로 손 쉽게 웹 브라우저 처럼 활동할 수 있도록 해주는 기술(커맨드라인 Tool 혹은 라이브러리) 서버와 통신할 수 있는 커맨드 명령어 툴이다. 웹개발에 매우 많이 사용되고 있는 무료 오픈소스이다 curl의 특징으로는 다음과 같은 수 많은 프로토콜을 지원한다는 장점이 있다. 다양한 지원 프로토콜들 DICT, FILE, FTP, FTPS, Gopher, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, Telnet, TFTP 또한 SSL 인증 방식 역시 가능하다. url을 가지고 할 수 있는 것들..

기타 2020.02.12

HTTP상태코드의 종류와 의미

상태코드의 종류와 그 의미 200ok, 400에러, 500에러 등등 알아보자 100~199 100번태 코드들은 클라이언트가 다음에 행동할 정보를 제공합니다. 100(계속): 요청자는 요청을 계속해야 한다. 서버는 이 코드를 제공하여 요청의 첫 번째 부분을 받았으며 나머지를 기다리고 있음을 나타낸다. 101(switching protocol) : 요청자가 서버에 프로토콜 전환을 요청했으며 서버는 이를 승인하는 중이다. 200~299 요청 받은 것이 성공적으로 처리되었음을 나타냅니다. 200(OK) : 서버가 요청을 제대로 처리했다는 뜻이다. 이는 주로 서버가 요청한 페이지를 제공했다는 의미로 쓰인다. 201(Created) : 클라이언트의 요청에 대해서 서버가 새로운 문서를 생성하였다는 것을 나타냅니다. ..

기타 2020.02.10