전체 글

· Clean Code
다음은 로버트 C. 마틴 Clean Code(클린 코드)를 읽고, 정리한 내용입니다. 나쁜 코드에 주석을 달지 마라. 새로 짜라. - 브라이언 W.커니핸, P.J. 플라우거 - 주석은 필요악 주석은 '순수하게 선하지' 못하다. 사실 상 주석은 기껏해야 필요악이다. 프로그래밍 언어 자체가 표현력이 풍부하다면, 아니 우리에게 프로그래밍 언어를 치밀하게 사용해 의도를 표현할 능력이 있다면, 주석은 거의 필요하지 않으리라. 아니, 전혀 필요하지 않으리라. 우리는 코드로 의도를 표현하지 못해, 그러니까 실패를 만회하기 위해 주석을 사용한다. 여기서 내가 실패라는 단어를 썼다는 사실에 주목한다. 진심이다. 주석은 언제나 실패를 의미한다. 때때로 주석 없이는 자신을 표현할 방법을 찾기 못해 할 수 없이 주석을 사용한..
· Clean Code
다음은 로버트 C. 마틴 Clean Code(클린 코드)를 읽고, 정리한 내용입니다. 작게 만들어라! 함수를 만드는 첫째 규칙은 '작게!'다. 함수를 만드는 둘째 규칙은 '더 작게!'다. public static String renderPageWithSetupsAndTeardowns( pageData pageData, boolean isSuite) throws Exception{ if(isTestPage(pageData)) includeSetupTeardownPages(pageData, isSuite); return pageData.getHtml(); } 블록과 들여쓰기 다시말해, if 문/else문/while 문 등에 들어가는 블록은 한 줄이어야 한다는 의미다. 한 가지만 해라! 함수는 한 가지를 해야..
· Clean Code
다음은 로버트 C. 마틴 Clean Code(클린 코드)를 읽고, 정리한 내용입니다. 의도를 분명히 밝혀라 "의도가 분명하게 이름을 지으라"라고 말하기는 쉽다. 여기서는 의도가 분명한 이름이 정말로 중요하다는 사실을 거듭 강조한다. 좋은 이름을 지으려면, 시간이 걸리지만 좋은 이름으로 절약하는 시간이 훨씬 더 많다. public List getThem(){ List list1 = new ArrayList(); for(int[] x : theList) if(x[0] == 4) list1.add(x); return list1; } 다음 코드는 무엇을 할까? (theList에 저장된 배열들 중에서 첫 번째 요소가 4인 배열들을 추출하여 리스트로 반환하는 메서드) 다음은 theList를 추론한 형태이다. the..
· Clean Code
다음은 로버트 C. 마틴 Clean Code(클린 코드)를 읽고, 정리한 내용입니다. 원초적 난제 프로그래머는 근본적인 가치에서 난제에 봉착한다. 한 두해 이상 우리 분야에 몸담은 프로그래머라면 누구나 나쁜 코드가 업무 속도를 늦춘다는 사실을 익히안다. 그럼에도 모든 프로그래머가 기한을 맞추려면 나쁜 코드를 양산할 수밖에 없다고 느낀다. 진짜 전문가는 두번째 부분이 틀렸다는 사실을 잘 안다. 나쁜 코드를 양산하면 기한을 맞추지 못한다. 오히려 엉망진창인 상태로 인해 속도가 곧바로 늦어지고, 결국 기한을 놓친다. 기한을 맞추는 유일한 방법은, 그러니까 빨리 가는 유일한 방법은, 언제나 코드를 최대한 깨끗하게 유지하는 습관이다. 깨끗한 코드는 한 가지를 제대로 한다 마지막으로 비야네는 깨끗한 코드란 한가지를..
· Clean Code
여느때처럼 코드를 쓰다가 코드가 너무 길어진다는 생각이 들었습니다. '코드를 정리해야 하지 않을까?' 복잡하게, 중복되게 짠 코드는 output을 내는 것을 더디게 만들고 있었습니다. 이에 대한 개선으로, 'clean code' 책을 읽고 유익한 구절을 필사로 남기려고 합니다. 그리고 최대한 프로젝트 내에서 이를 적용해보려고 합니다. 책이 두껍고, 읽는 속도가 빠르지 않기에 시간이 좀 걸릴 수 있습니다. 하지만, 현재상황에서 시간이 걸리더라도 깔끔한 코드를 작성하는 것은 장기적으로 큰 도움이 될 것 입니다. 코드에 정직하고, 코드의 상태에 관하여 동료들에게 정직하고, 무엇보다도, 자기 코드에 대해서 자신에게 정직하라는 뜻이다.
2023년 회고록을 쓰려고 사진첩을 뒤졌는데, 딱히 찍은 사진이 없다. 그도 그럴것이, 어딜 다닐 시간이 없었기 때문이다. 하지만, 그 어떤 해보다도 나에게는 만족스러운 한 해였다. ​ ​ 내가 좋아하는 것을 찾고, 그것에 몰두했다​ ​ ​ 2월 ~ 7월 코드스테이츠 부트캠프 (프론트엔드) 처음 코딩을 배웠다. ​ 코드스테이츠라고 광고를 많이 하는 국비교육기관이 있다. 사진에 보여준 것처럼 정해진 틀을 주고, 그 안에서 코드를 짜라는 형식이다. 수업은 모두 비대면이고, 재미없는 문서를 주면서 거의 그 예제를 강사가 읽어준다. 응 그렇다 주입식이다. 그래서 시간대비 실력이 별로 안는다... ㅎ 그리고 재미도 없다 ㅠㅠ 주입식 교육방식 때문에 코딩하는 맛(?) 이 안난다.. ​하지만, 초심자에겐 시간이 필요..
· php
https://www.9lessons.info/2009/12/twitter-style-load-more-results-with.html#google_vignette Twitter Style Load More Results with jQuery and Ajax. Twitter and Facebook using very nice technique for loading more tweets and updates, when you click the more button old tweets display on the screen. www.9lessons.info 다음 글을 참고하여 입맛에 맞게 코드를 수정했습니다. 저는 mysqli 로 db와 연결하였기 때문에 mysqli로 사용을 통일했습니다. 구현 방식은 1...
· Android
프로젝트의 폴더구조 app > java > com.example.myfirstapp > MainActivity 이는 기본 활동으로, 앱의 진입점입니다. 앱을 빌드하고 실행하면 시스템에서 이 Activity의 인스턴스를 실행하고 레이아웃을 로드합니다. app > res > layout > activity_main.xml 이 XML 파일은 활동의 사용자 인터페이스(UI) 레이아웃을 정의합니다. 이 파일에는 'Hello, World!'라는 텍스트가 있는 TextView 요소가 포함되어 있습니다. app > manifests > AndroidManifest.xml 매니페스트 파일은 앱의 기본 특성을 설명하고 앱의 각 구성요소를 정의합니다. Android Layout Editor의 기능과 계층구조 Android ..