1. dpkg -l | grep package_name
Sass는 CSS의 상위에 있는 메타 언어로 CSS의 전처리기(pre-processor)이다. Sass를 그대로 사용하는 것이 아니라 Sass 문법으로 작성된 코드를 CSS 코드로 변환해 준다. Sass에는 sass문법과 scss문법이 있는데 scss문법이 css의 문법과 동일한 방식으로 진행되기 때문에 권장되고 있다.(아래 예제들은 모두 scss문법을 따르고 있다.) CSS는 쉽게 작성할 수 있지만 변수나 함수가 없어 코드를 재활용할 수 없기 때문에 점점 커지고 복잡해질 수록 유지보수하기가 어려워진다. Sass는 변수나 함수를 사용하여 CSS의 반복되는 부분을 줄여 더 빠르고 효율적으로 코드를 작성하고 쉽게 유지보수 할 수 있도록 만들어준다. 기본 적인 문법에 대해서는 아래에 설명을 하겠지만 일단 예를..
FlexBox는 CSS3에서 제공하는 레이아웃을 지정할 수 있는 방식 중 하나이다. FlexBox를 사용할 때는 두 단계의 태그가 필요하다. 첫 번째는 부모 태그이고 두 번째는 자식 태그이다. 부모 태그는 자식 태그를 감싸는 태그로 자식 태그를 배치하고 정렬 시킬 수 있고 컨테이너라고 부르기도 하며 부모 태그 안에 있는 모든 태그는 자동으로 자식 태그가 되며 아이템이라고 부르기도 한다. FlexBox는 main-axis와 cross-axis라는 두개의 축을 가지고 있으며 FlexBox에 기본적으로 main-axis는 가로이고 cross-axis는 세로이다. 각 축은 시작 점과 끝 점을 가지고 있는데 main-axis의 시작 점과 끝 점은 아이템이 배치되는 방향이고 cross-axis의 시작 점과 끝점은 ..
CSS란 마크업 언어로된 문서들(ex. HTML, SVG, XML, XUL)을 꾸밀 때 사용이 된다고 한다... 여기서는 HTML을 기준으로 설명한다. (HTML에서만 사용해 봤기 때문....) CSS를 사용할 때 얻을 수 있는 장점은 브라우저에 표시할 정보와 해당 정보를 꾸미기 위한 내용이 있을 때 정보와 꾸미기 위한 내용을 분리하여 관리할 수 있기 때문에 유지보수가 쉬우며 꾸미는 내용에 대한 중복을 줄여줄 수 있고 하나의 CSS로 여러 문서를 꾸밀 수 있다는 것이다. CSS에도 단점이 있는데 잘못된 내용이 작성되어도 무시가 되기 때문에 오류를 찾는데 힘들 수 있다. CSS가 적용되는 과정을 보면 브라우저가 우선 HTML 문서를 파싱한 후 HTML 문서에 스타일 정보(CSS)가 있으면 스타일 정보를 파..
동반 객체 혹은 짝 객체라고 불린다. 동반 객체는 class나 trait과 동일한 이름을 가지는 object가 Class나 trait과 같은 파일에 있을 때 동반 객체라고 한다. class LearnScala { } object LearnScala { // 동반 객체 } 혹은 trait LearnScala { } object LearnScala { // 동반 객체 } object는 class의 private 한 변수나 함수에 접근할 수 있다. class LearnScala { private val privateValue: Int = 1 } object LearnScala { val learnScala = new LearnScala def hardStudy: Int = { learnScala.private..
우분투 버전 : 17.10 인텔리제이에서 한글로 주석 등 글을 작성할 때 띄어쓰기를 하거나 방향키를 누르면 생가지도 않게 작성하던 문자가 움직이는 버그가 있다. 이 버그를 해결하기 위해서 우분투에서 기본적으로 제공하는 IBus입력기를 uim-byeoru 입력기로 바꾸는 과정을 기록한다. uim-byeoru를 설치하는 것은 간단하다. ` sudo apt-get uim uim-byeoru ` 명령어를 실행하면 된다. 그 다음 환경 설정페이지로 가서 언어 탭으로 이동하고 설치된 언어관리를 클릭한다. 그러면 언어지원 창이 뜨는데 여기서 키보드 입력기를 uim으로 변경해준다. 그리고나서 uim을 실행하여 전체적인 설정 탭의 디폴트 입력기를 벼루로 지정하면된다. 여기에 더해서 uim에서 한글과 영어의 변환을 기본으..
들어가기에 앞서 퍼블리시란? SBT나 apt, npm, Gradle 등은 사용하고자 하는 라이브러리를 명시하면 원격 저장소에서 가져와 개발자가 사용할 수 있도록 도와주는 도구들이다. 이런 도구들이 참조하는 원격 저장소에 라이브러리를 저장하는 것을 퍼블리시라고 한다. 아래 내용은 SBT를 통해서 퍼블리시하는 내용을 담고 있다. SBT를 통해서 퍼블리시 하는 방법은 여러 가지가 있다. 1. publishTo := Some("Sonatype Snapshots Nexus" at "https://Address of Nexus") : Nexus 원격 저장소에 퍼블리시하는 방법이다. 2. publishTo := Some(Resolver.file("file", new File( "로컬 파일 경로" ))) : 원하는 로..
Option 타입은 값을 담고 있는 컬랙션으로 값의 존재 여부가 불확실하여 값이 존재할 수 있고 존재하지 않을 수 있다는 것을 나타내기 위한 타입이다. 하위 타입으로 "None"과 "Some"이 있는데 "None"은 값이 존재하지 않는다는 것을 나타내기 위한 타입이고 "Some"은 값이 존재한다는 것을 나타내기 위한 타입이다. * Option 생성 방법 Option(1)은 Some(1)을 Option(null)은 None을 반환한다. 이렇게 Option 타입을 사용하면 가질 수 있는 장점으로 Java와 비교해본다면 NullPointException 에러가 발생할 일이 없어진다는 것이다. 이제 Option이 있을 때와 없을 때를 비교를 해보자 Map을 자바에서 호출한다면 V를 반환하고 Scala에서는 Op..
방법은 reset을 통해 이전 커밋으로 돌아가 해당 내용을 다시 커밋하는 것이다. 이렇게 하면 이전에 했던 커밋을 없앤 후 다시 커밋하는 것이기 때문에 막 사용하면 안 될 것 같다. 깃 터미널에서 사용하는 방법 : 1. 하나의 커밋을 되돌릴 때는 git reset HEAD^ 명령어를 작성하고 여러개의 커밋을 한 번에 되돌리려면 git reset HEAD~2 명령어를 작성하면 된다.(2 라고 작성된 곳에 원하는 만큼의 수를 작성하면 된다.) 2. 커밋을 되돌렸으니 git commit -m '커밋 내용' 명령어를 통해서 다시 커밋하면 된다. 3. 커밋을 원하는데로 다시 작성했다면 git push origin +[브랜치 명] 명령어를 통해서 강제 푸시를 해주면 된다. SourceTree에서 사용하는 방법 : ..
docker images [options] : 이미지의 목록을 보여준다. -a, --all : 모든 이미지의 목록을 보여준다. -q, --quiet : 이미지의 아이디를 목록으로 보여준다. docker ps [options] : 현재 구동중인 컨테이너의 목록을 보여준다 -a, --all : 모든 컨테이너의 목록을 보여준다. docker rm [options] -f, --force : 실행중인 컨테이너를 강제로 삭제한다. -v, --volumes : 해당 컨테이너와 관련된 볼륨들을 같이 삭제한다. docker rmi [options] 이미지 [이미지...] : 이미지를 삭제한다. 단 컨테이너가 실행중인 이미지는 삭제되지 않는다. -f, --force : 이미지를 강제로 삭제한다. docker-compose..