programing
-
[JS] DOM element의 offsetTopprograming/Language 2019. 5. 1. 20:11
안녕하세요, Einere입니다. (ADblock을 꺼주시면 감사하겠습니다.) 오늘은 DOM element의 offsetTop속성에 대해 알아보도록 하겠습니다. offsetTop offsetTop은 뭘까요? MDN에서는 다음과 같이 설명하고 있습니다. offsetTop is the number of pixels from the top of the closest relatively positioned parent element. 음.. 가장 가까운 상대적으로 가장 가까운 부모 엘레먼트의 상단에서부터의 픽셀값이라고 합니다. 중요한 부분은 가장 가까운 부모에 대해, 상대적 픽셀값이라는 것입니다. 상대적으로 가까운 부모라는 말이 조금 이상하긴 하지만, 제가 이해한 바로는 조상이 아닌 '부모'를 의미하는 듯 합니다..
-
[용어] non-blocking, asynchronous, concurrencyprograming/etc 2019. 4. 24. 15:42
안녕하세요, Einere입니다. (ADblock을 꺼주시면 감사하겠습니다.) 오늘은 비대기(non-blocking), 비동기(asynchronous), 동시성(concurrency), 병렬성(parellelism)에 대해 알아보겠습니다. 해당 포스팅은 원글을 제가 보기 좋게 정리한 것입니다. 원글은 글 하단의 참고에 링크해두었습니다. Non-blocking 크게 다음 두가지의 의미로 사용됩니다. Non-blocking algorithm (Non-blocking synchronization) Non-blocking이란, 어떤 쓰레드에서 오류가 발생하거나 멈추었을 때 다른 쓰레드에게 영향을 끼치지 않도록 만드는 방법들을 말한다. 공유 자원(메모리, 파일 등)를 사용하는 멀티 쓰레드 프로그래밍을 할 때, 특정..
-
[JS] JavaScript에 대한 다양한 개념들programing/Language 2019. 4. 4. 23:20
안녕하세요, Einere입니다. (ADblock을 꺼주시면 감사하겠습니다.) 오늘은 JavaScript에 대한 기초적인 개념이 잘 정리된 글을 소개해볼까 합니다. 입사면접 전, 복습용으로 좋은 것 같습니다. http://www.nextree.co.kr/p7363/ JavaScript : Scope 이해 JavaScript는 단순한 언어로 여겨져 왔습니다. 그래서 여러 개발자분들이 JavaScript를 배우기도 쉽고 간단히 쓸 수 있다는 편견을 가지고있습니다. 하지만, 최근 JavaScript의 관심이 늘어나면서 JavaScript는 더이상 '쉬운 언어'가 아닌 깊은 이해를 필요로 하는 언어라는 인식이 생기고있습니다. 저는 JavaScript에 대한 깊은 이해를 하기 위해서는 클로저(Closure)에 대해..
-
[Android] Base64를 이용한 encoding시 주의점programing/Mobile 2019. 4. 1. 17:36
안녕하세요, Einere입니다. (ADblock을 꺼주시면 감사하겠습니다.) 오늘은 Android Studio에서 Base64를 이용하여 인코딩을 할 때 주의사항에 대해 알아보겠습니다. Base64 Base64을 사용하여 인코딩시, 인코딩 된 문자열의 한 line을 표시하기 위한 flag bit로서 LF(\n)를 삽입한다고 합니다. 정확히는 76글자가 넘는다면, 해당 위치에 개행문자(LF)를 삽입합니다. encodeToString public static String encodeToString (byte[] input, int flags) 보통 Base64를 이용하여 인코딩 하는 경우, 결과물로서 String을 사용하는 경우가 많기 때문에 위 함수를 사용하는 경우가 많습니다. Android Develop..
-
[Android Studio] 협업과 Instant Run 관련 에러 해결 방법programing/Mobile 2019. 3. 30. 16:23
안녕하세요, Einere입니다. (ADblock을 꺼주시면 감사하겠습니다.) 오늘은 Android Studio에서 협업을 하는 과정에서, Instant run과 관련된 에러를 해결하는 방법에 대해 알아보겠습니다. Github을 이용한 협업 현재 저는 산학연계 프로젝트의 협업툴로 Git과 Github을 이용하고 있습니다. github에 코드를 푸쉬할 때, 민감한 개인정보라던지 환경변수, 경로명 같은 경우엔 주의가 필요합니다. 지금 포스팅을 하게 된 계기인 sdk의 경로인 sdk.dir이 대표적인 경우입니다. 위와 같이 협업을 하는 과정에서는 경로명(User)이 각자 다르기 때문에, 이와 같이 기본값으로 설정하는 것이 좋습니다. 하지만, 저같은 경우엔 사용자명이 "User"가 아니기 때문에, sdk를 찾는 ..
-
[Java] Initial assignmentprograming/Language 2019. 3. 27. 20:08
안녕하세요, Einere입니다. (ADblock을 꺼주시면 감사하겠습니다.) 오늘은 IntelliJ에서 가끔씩 발생하는 변수 초기화 경고에 대해 포스팅하고자 합니다. Inital assignment String text = null; text.toString(); 보통 변수를 사용할 때, 위와 같이 초기화를 하시는 분들이 많을 것입니다. 저 또한 이렇게 배웠구요. 하지만, 이렇게 초기화를 한다면 컴파일은 되지만 runtime error가 발생할 수 있다고 합니다. String text; text.toString(); 위와 같이 코딩한다면 물론 컴파일시에 compile error가 발생하게 됩니다. 그래서 IntelliJ에서는 위와 같이, 컴파일시에 compile error를 발생시키기 위해 초기화시 아무..
-
[MySql, Sequelize] model 만들기programing/Database 2019. 3. 22. 16:40
안녕하세요, Einere입니다.(ADblock을 꺼주시면 감사하겠습니다.) 오늘은 Sequelize를 이용하여 model(table)을 만드는 방법을 알아보도록 하겠습니다. Make model file 우선, 모듈화를 위해 "Express 프로젝트 폴더/models/"안에 원하는 model(table)파일을 만들어주세요.저는 user와 comment를 만들었습니다. 그리고 모듈로 만든 파일을 exports해야 하기 때문에, module.exports에 익명함수를 하나 생성합니다.인자로는 sequelize와 DataTypes(Sequelize)를 받으며, sequelize.define()의 반환값을 반환합니다. define함수는 model명과 생성함수 혹은 모델객체를 받습니다.이번 포스팅에서는 모델객체를 ..
-
[MySql, Sequelize] DB 만들기programing/Database 2019. 3. 22. 15:47
안녕하세요, Einere입니다.(ADBlock을 꺼주시면 감사하겠습니다.) 이번에는 Sequelize-cli를 이용하여 DB를 만드는 법을 알아보도록 하겠습니다. Modify config.json 이전 글에서, config.json파일에 대해 설명했습니다.username은 mysql계정 이름, password는 비밀번호, database는 DB이름, host는 ip입니다.저는 root계정에 비밀번호를 추가하고, nodejs라는 DB을 만들기 위해 위와 같이 수정하였습니다. Make DB sequelize db:create위 명령을 입력하시면, config/config.json파일을 읽은 후, develpment모드에 적혀있는 nodejs라는 DB를 만드는 것을 확인할 수 있습니다.