프로그래밍 7

나는 말하듯이 코딩하고 있는가?

이전에 사용했던 블로그에 새 알람이 떴길래 확인하며,예전에는 어떠한 쓰잘대기 없는 글들을 올렸나 잠시 둘러보았었다.그러던 와중에 스크랩해두었던 흥미가 갈만한 제목 하나가 눈에 띄었다. '말하듯이 코딩하라' (출처 : https://gamecodingschool.org/2015/05/27/말하듯이-코딩하라/) 그때는 어떻게 읽고 받아들였는지 모르겠지만최근 현업에 몸을 두며 코드 품질에 대한 생각들이 조금씩 생기다보니 흥미롭게 다가왔다. 현업에서 스스로를 되돌아 봤을 때... 많이 뜨금했다. (흑...) 실제로 코드 리뷰 진행시 실제로 작성한 코드와 별개로 부가적인 설명을 진행할 때가 많은 것 같은데,이는 구현한 코드 자체만으로 설명하기에는 상대를 납득시킬 수 없기 때문이었다. 코드 외 덧붙여지는 설명들이 ..

[삽잡이::일기] 복붙의 폐해...

Ctrl + C / V (일명 복붙)는 정말로 반드시 필요한 저의 필수 템입니다. 본인의 이 필수템 복붙은 엄청난 편리함과 동시에엄청난 삽질을 선사해주곤 합니다.으아~~ 불타는 삽질~~ 즉, 편한만큼 리스크가 매우 크다는 사실... 오늘 있었던 일입니다...뭔가 키보드가 착착 감기며 코드를 작성하고 있었는데,복붙을 할 일이 좀 있었습니다. 따닥~ 따닥~ 그런데, 갑자기... 되던게 안되는 것 같고... 어제는 된거 같은데... 왜 안되지... 일단 급한불 부터 끄자는 생각에온갖 야매란 야매는 다 붙여서 해결은 했는데...진짜 해결이 안되는 것들이 있더군요... 그래서... 이미 늦었지만... 로그를 분석하기 시작했습니다.(왜 진작에 안했니... 저도 잘 모르겠습니다...) 결국 찾았는데,정말 단순히 저ㅈ..

[삽잡이::일기] 다이어그램으로 프로그램 설계하기

늘 개발을 진행하며 생각치 못한 변수들을 발견하게 된다.예상치 못한 변수들이기에 이를 대처하기 위해 리소스를 할애한다. 그러다보면 자연스레 일정이 촉박해지고,일정을 미룰지 몸을 불태울지(?) 사투를 벌이게 된다...물론, 몸을 불태워도 머리는 재가 되버린다는... 나는 개발을 진행하기 이전에 대충 본다.그리고 대충 생각한다.머릿속으로 그리는 나의 개발 설계도는 완벽하다 못해 아름답다. '그까이꺼 문제 발생하면 처리해버리지' 그러다 훅간다 ~ 나의 아름다운 설계는 현실속에서 부실 공사의 원인이 되는... 결국 스스로 돌아보며 종합했을 때,난 설계를 대충한다. 미리 알아두고 따르면 좋을 것을,인간의 못된 심보인지 그냥 내 심보인지나는 직접 데여봐야 한다. 앗 뜨거~ 주어진 요구사항들과 해결하고자 하는 중점적..

[삽잡이::etc] 백슬래시(backslash)와 escape sequence에 대해서

백슬래시는 상황에 따라 이와 같이 두가지로 나타나게 됩니다.이 백슬래시는 프로그래밍 언어에서 escape 기능을 가지고 있습니다. escape는 말 그대로탈출하다는 의미를 가지고 있습니다. escape sequence 는 기존 의미를 탈출한 특수한 기능을 위해 사용하는 약속입니다. 즉, 기존 프로그래밍 언어를 통해 코드를 작성해가며기존에 정해진 약속에 의해 표현이 곤란한 문자들을 표현한다던지,특정 기능을 제공할 수 있습니다. 예를 들어 문자를 출력하는 경우를 생각해보겠습니다. 1System.out.println("Hello! My name is "삽잡이"!");cs 이와 같이 출력하고자 하는 문자열에 큰 따옴표("")가 존재한다면? 프로그래밍 언어를 사용하며 정해진 약속중 하나는'문자열 출력은 큰 따옴표..

[삽잡이] 객체지향 프로그래밍에서 주의해야할 점

안녕하세요 삽잡이입니다. 이번 시간에는 객체지향 프로그래밍에 있어서 주의해야할 점에 대해서나눠보고자합니다. 캡슐화란, '관련성 있는 것끼리 하나의 묶음, 패킹, 틀로 만들어낸 것'을 의미합니다.즉, 경계를 만들어 내는 것입니다.이 캡슐화를 통해 데이터 보호와 데이터 은닉을 할 수 있습니다. 객체지향에서 기본은 클래스와 객체입니다.클래스는 객체들의 정의입니다.그리고 객체는 클래스의 인스턴스라고 부릅니다. 모든 객체는 '독립적'이어야합니다.예를 들어 '삽잡이'라는 클래스를 통해 만들어진 A객체와 B객체가 있다고 해봅시다.이때, A객체를 건드려도 B객체는 독립적으로 유지되어야한다 이겁니다.이를 '객체의 독립성'이라고 부릅니다.이 객체라는 것은 실제 세계에서도, 가상 세계에서도 독립성을 가집니다.독립성을 가지지..

[삽잡이] 개발 잘하는 방법 (코딩 잘하는 방법) (1)

개발을 잘하지 않는다...개발을 잘한다... 어떠한 기준일까...하지만 지금보다 더욱 향상된 스스로를 찾기 위한 방법에 대한 자문을 구했다... 개인에 맞는 좋은 방법을 찾으라고 하셨다.좋은 방법론...똑같은 시간을 투자한다고 똑같은 output이 나오는 것은 아니라는데 동의를 한다.그러니... 개개인에 맞는 방법론을 찾아야된다. 우리 같은 직종은 끊임없이 공부를 해야하는 분야라고들 말한다.그 말은, 매번 학습할 기회가 있다는 것. 반복되는 학습의 기회 속에서 내가 하는 학습 방법이 옳고 효율적인지그리고 더 좋은 방법이 있는지 끊임없이 공부해야한다.나에게 더 맞는 좋은 방법론이 있다면 시도해보고, 찾아봐야지... 최고는 평생 찍을 수 없다고 생각한다. 마치 끝없는 천국의 계단 같다고 해야하나... 다리를..