SOLID BASIC
[NHN CLOUD] 4번의 클릭으로 배포가 가능하다고? AppPaas 이용방법 알아보기 | AppPaas 1분 이용
안녕하세요!NHN CLOUD 신규 서비스인 AppPaas 서포터즈 썬라이즈 팀장 채은입니다 :) 앱 서비스를 개발하는 과정에서 배포 하는 것이 여간 신경쓰이는 과정이 아니잖아요 ㅎㅎ배포 과정을 단 네 번의 클릭으로 줄여주는 똑똑한 서비스가 있답니다!바로 AppPaaS 인데요! AppPaaS 그게 대체 뭔지!어떻게 이용하는건지!확실하게 알려드리겠습니다! AppPaaS, 무슨 서비스인데? NHN 클라우드의 AppPaaS 서비스는 클라우드 환경에서 애플리케이션을 개발, 배포, 관리,그리고 확장할 수 있는 종합적인 플랫폼을 제공하는 서비스입니다!개발자와 기업이 인프라 관리에 대한 걱정 없이 애플리케이션에 집중할 수 있도록 다양한 도구와 기능을 제공하는 것을 목표로 해요.이를 통해 개발과 운영에 필요한 시간을 ..
SQL DDL, DML, DCL, TCL 이란?
졸작 설계하다가 급 공부하고 쓰는 글 알아보자 ㅋ DDL (Data Definition Language) - 데이터 정의어 테이블과 같은 데이터의 구조를 정의하는 언어로써 데이터리를 생성 , 수정 삭제 하는등의 데이터의 전체의 골격을 결정 데이터베이스, 테이블등을 생성하는 역활을 합니다. => 데이터 구조와 관련된 명령어들 종류 역활 CREATE 테이터베이스, 테이블등을 생성하는 역활 ALTER 테이블을 수정 하는 역활 DROP 테이터베이스, 테이블을 삭제하는 역활 TRUNCATE 테이블을 초기화 RENAME 데이터베이스의 객체 이름을 변경 SCHEMA, DOMAIN, TABLE, VIEW, INDEX를 정의하거나 변경 또는 삭제할 때 사용하는 언어입니다. 데이터 베이스 관리자나 데이터베이스 설계자가 사..
[GIT] 깃털 스터디 3주차: reset and revert
reset --hard 정리 c2 커밋을 작성한 시점으로 되돌리기 c2 이후에 작성한 모든 내용이 필요 없는 경우 그저 c2 커밋을 작성한 시간으로 되돌리면 된다 먼저, main 이라는 멀티버스의 시간이 c3 에 있기 때문에 이것을 뒤로 돌려줘야 한다. 그리고 그곳에 있는 HEAD 도 같이 c2라는 시간으로 돌아와야 한다. 메인은 커밋을 참조하고, 커밋은 브랜치를 참조한다. 즉, 참조값을 뒤로 돌려주면 된다. 이럴때 git 에서 reset 이라는 수간에 hard 옵션을 줘서 수행할 수 있다. reset --mixed 정리 c3 커밋 작성 바로 전으로 돌아가기 이전과 달리 c2 이후에 작성한 내용은 틀리지 않았지만 c3 커밋에서 추가하면 안될 내용이 있는 경우 작성한 내용을 날리면 안 될 것이다. 작성된 ..
[GIT] 깃털 스터디 WEEK 2주차 - branch and merge
branch 멀티버스라고 생각하기 switch git 에서는 switch 명령어를 사용하여 우리가 만든 브랜치로 이동이 가능하다. 가장 쉬운 merge, fast-forward merge 깃에서는 여러 브랜치에서 작업된 것을 합치는 과정을 merge 라고 한다. fast - forward merge : 실질적으로 변경사항을 합치는 과정이 아니라 그저 참조값만 옮기는 상황 주로 협업에서는 개발을 하기 위한 작업에서 사용, 가장 먼저 기능 개발이 끝난 브랜치를 개발을 위한 브랜치에 합치게 될 때 이 머지 방법을 이용하게 된다. 복잡한 상황의 merge, 3-way merge 서로 다른 두 변경을 만든 브랜치를 합치고 싶다면 깃은 두 브랜치가 만들어진 베이스와 두 브랜치를 합치게 된다. 두 브랜치에서 만들어..
[GIT] GIT-STUDY 1주차 - Git으로 파일 관리 시작하기
Git으로 파일 관리하기 Git의 3가지 영역 Git의 4가지 상태 실습 - git status 및 .git 디렉토리 분석하며 add, commit 하기 # week1 과제 요구 사항입니다. 실습 영상과 같이 진행해주세요. [ 요구 사항 ] 1. .txt 파일을 생성한다. 2. git status 를 통해 상태를 확인한다. 3. git add 를 통해 변경사항을 스넵샷으로 저장한다. 4. git status 를 통해 나온 상태를 확인한다. 5. git commit을 통해 변경사항을 저장한다. 6. git status를 통해 나온 상태를 확인한다. 7. .txt 파일에 자유롭게 내용을 추가 한다. 8. git status를 통해 나온 상태를 확인한다. 9. git add 를 통해 변경사항을 스넵샷으로 저장..
[GIT] GIT-STUDY WEEK 0주차 - Git과 Github를 알아보자
Git과 Github 란? Git을 사용하는 이유 Git 용어 정리 Git config 설정하기 과제 제출 방법 GitHub - PinaryStudy/Git-Task: 깃 스터디 3기, 과제 위 링크의 레포지터리를 Clone 받아주세요! 비 개발 파트 혹은 Clone 의 사용법을 모르시는 경우 따로 연락 주세요! 해당 내용은 추후 진행됩니다. SOPT 교육 과정에 맞춰 Clone 은 사용할 수 있다 가정하고 진행합니다. 클론 받은 레포지터리 내부로 이동해주세요 다음과 같이 실행시켜 과제를 확인해주세요 Window 의 경우 git bash 에서 실행시켜주세요. Powershell 을 이용하는 경우는 따로 스크립트 파일에 대한 설정을 해야할 수 있습니다. $bash start.sh $bash validate..
[안드로이드] 뷰 바인딩이란 무엇일까?
1. 뷰 바인딩 예를 들어, xml에서 이렇게 텍스트뷰를 3개 쓰고 있다고 치자 public class MainActivity extends AppCompatActivity { private TextView nameView, phoneView, addressView; // 변수 선언하고 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); nameView = findViewById(R.id.name); // findViewById로 id를 찾아서 넣어준다. phoneView = findViewById(R.id.p..
[안드로이드] Inflate 란? 무엇일까
Inflate란? 사전적 정의로는 "부풀리다 ,올리다" 라는 의미를 가지고 있다. 안드로이드에서 Inflate는 xml에 표기된 레이아웃들을 메모리에 로딩된 후 객체화 시키는 과정이다. 안드로이드에서 inflate는 xml에 표기된 레이아웃들을 메모리에 객체화시키는 행동이다. 쉽게 말해, xml코드들을 객체화해 소스코드에서 사용하기 위함이다. 기본적으로 안드로이드에서 화면(Activity 단위)을 만들면 소스코드, 레이아웃.xml 이렇게 2개가 생성된다. 이때 Activity에서 setContentView() 함수가 바로 xml을 객체화시키는 Inflate동작이다. class MainActivity : AppCompatActivity(){ override fun onCreate(savedInstanceS..
알고리즘: 그리디 알고리즘
오늘부터 알고리즘을 차근차근 공부할 생각이다. 매주 두 가지 주제의 알고리즘을 정복해나가는 식으로 공부할 예정이다. 10/4 (수요일) ~10/ 10 (화요일) 동안 공부할 알고리즘은 그리디 알고리즘과 스택, 큐 덱(자료구조)를 이용한 알고리즘이다. 오늘은 일단 내 생일 1004이므로 그리디 알고리즘을 간략하게 공부하고 백준 한 문제를 푸는 것으로 마무리 해야겠다. 그리디 알고리즘 그리디 알고리즘은 가장 직관적인 알고리즘 설계 패러다임 중 하나이다. 이는 우리가 원하는 답을 재귀 호출과 똑같이 여러 개의 조각으로 쪼개고, 각 단계마다 답의 한 부분을 만들어 간다는 점에서 완전 탐색이나 동적 계획법 알고리즘과 다를 것이 없다. 그러나 모든 선택지를 고려해 보고 그중 전체 답이 가장 좋은 것을 찾는 두 방법..
[백준] 자바 - 11047번: 동전 0 (그리디 알고리즘)
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); int N = in.nextInt(); //동전의 개수 int K = in.nextInt(); //원 int[] coin = new int[N]; for(int i = 0; i = 0; i--) { if(coin[i]