컴공성님들 저좀 도와주세요

글쓴이2018.05.07 01:37조회 수 1012댓글 22

    • 글자 크기

파이썬 뭘로 배웠어요?

 

튜토리얼 정도 수준은 배웠는데 

코드읽는게 안되네요...;;

    • 글자 크기

댓글 달기

  • 자꾸하다보면 됨ㅎ 코딩엔 왕도가 없ㅇ
  • 어떤 코드가 안 읽히시는데요?

     

    전 다른 언어를 먼저 접하고 파이썬을 뒤에 접해서, 간단한 코드 읽는데는 별 문제 없었어요.

     

    파이썬의 특이한 문법 (decorator, list comprehension 등)은 아직 익숙하지 않지만요.

  • @부자 소리쟁이
    제가 코딩하는게 목적이 아니라
    파이썬으로 쓴 프로그램을 보고있는데
    처음엔 그냥 몰라서 안읽히는건가 했는데
    기본적인 문법을 보고나도 잘 안 읽히네요

    제가 본것 말고 좀 어드벤스드한 책 있으면
    빌리거나 사서 참고서적으로 쓰려구요
  • @글쓴이

    변수 선언, 대입, if, for, list type, function 정도만 알아도 레퍼런스 뒤적여가면서 왠만한 코드는 읽을 수 있어요.

    전 인터넷에서 찾을 수 있는 python document 외엔 읽어본 책이 없어요.

    코딩을 잘 하려면 (=코드 리딩을 잘 하려면) 기본적인 문법 요소들이 결합되어 의미 단위를 이루는 케이스들을 눈도장 잘 찍고 이해해야 하죠.

    한편으론 직접 작성하는 것보다 남이 짠 코드 읽는게 더 어려운 경우도 있어요. (코드가 작동하는 모습을 머리속에 떠올리면서 의도를 파악해야 하니까요.)

     

    어떤 코드를 읽으려고 하시는지 예시를 들어주시면 좀 더 자세하게 설명드릴 수도 있는데, 일반론이라 구체적인 답변을 드리긴 어렵네요.

  • @부자 소리쟁이

    단순한 코딩 예제정도말고
    프로젝트 이상의 프로그램 짤 때의 방법론 이런걸 알고싶어요
    관습적으로 이러이러한 방법으로 설계한다 뭐 이런것들요...
    누가 정리해놓은 사이트나 서적이 있으면 구매해서라도 보고싶어요

    비컴공이라 정보력이 후달리네요

  • @글쓴이

    잘 짜여진 프로젝트의 경우, 변수이름 클래스이름 함수이름으로 대충 다 눈치를까게만듭니다.
    특히 파이썬의 경우 한 파이썬 파일이나, 기초 서적에 있는 프로그램이나 다를바가 없습니다.
    다른 건 쓰는 클래스나 변수가 사용자가 미리 import 시켜놓은곳에서 가져와서, 다른 방식으로 쓰인다는 겁니다. 그 이름이 쓰레기가 아닌 이상 . 예측할 수 있어야 합니다

    예컨데 파이썬 기초 서적에서는 a = 1 b = 2 c = a+b 이런식이라고 할 때 (저도 파이썬이 주 언어는 아니지만 다음과 같은 건 어디에나 통용됩니다.)
    프로젝트에서는 FileReader.add(filelist[a], filelist[b]) 이런식으로 표현될 뿐입니다. 그리고 그 FileReader같은 하나하나들은 사용자들이 만들었거나, 기본적으로 너무 방대해서 책에서는 직접 다루지 않습니다.  그 네이밍들을 검색해가며 감을잡으세요.

     

    다음과 같은 것을 import 했을때 어떤 함수들이 딸려 내려오는지 나중에 가면 눈이 익게될거에요 

    math

    as

    sys

    file

    os

    time

     

     

    그 이름을 보고 프로그램이 어떻게 돌아가는지 예측하기 힘든 프로그램은 잘못 짜여진 프로그램입니다. 적어도 파이썬이라면요

  • @정겨운 부용
    흠 자꾸보면서 익히는 방법밖에 없군요
    정도를 걸어야겠네요ㅠㅠㅠ감사합니다
  • @글쓴이
    진짜 잘 짜여진 프로그램에는 그 함수가 어떤 일을 하는지, 파라미터들이 왜 있는지 주석이 없어도 쉽게 읽을수있게 되있고

    두번째로 잘 짜여진 프로그램은 읽기는 힘들지만 주석으로 설명이 잘 되어있습니다
  • @글쓴이
    http://mobile.kyobobook.co.kr/showcase/book/KOR/9791158390051

    책을 추천한다면 이책을 추천합니다
  • @글쓴이
    아 그리고 파이썬 기초 서적에는 쓰레드라든가 병렬처리라던가 그런건 잘 나오지 않을 경우가 많은데 그건 알아서 따로공부해야됩니다 어케추천하지
  • @정겨운 부용
    오 짱짱맨
    오늘은 늦었고 내일 책 빌리러 학교 가봅니다
    병렬처리 같은 개념은 언어보단 프로그래밍 기법에 가까운거죠?
  • @글쓴이
    프로그래밍 몇년해보면 언어는 아무 문제가 안된다는 걸 알수있을겁니다.

    언어보다 기법이고, 언어는 그걸 구현하는 구현체일뿐입니다.
  • @글쓴이
    병렬처리같은 개념은 학생수준이라기보다 실무에가깝다고 봐야죠
  • @정겨운 부용
    감사합니다ㅠㅠ
    주변에 이런거 가르쳐줄 사람이 없어서 끙끙앓고있었는데 도움되었습니다
  • @글쓴이
    파이썬가지고 프로젝트하신다면 딥러닝하시는지..
  • @글쓴이
    프로젝트 이상의 프로그램 짤 때의 방법론은 지금 공부할 단계는아닙니다
  • 파이썬이 존재하는 모든언어중에서 사람이 읽기에 가장 쉬운 언어입니다. 본래짠 사람이 이상하게 짜지 않았다면 말이죠
  • @정겨운 부용
    언어가 쉽다 아니다가 문제가 아니라서요
    단편적인 코드는 읽겠는데 전체 프로그램 이해가 안됩니다
  • gcc나 doxygen 쓰면 코드 굴러가는게 이해하는게 편할수도 있음
  • @재수없는 흰꿀풀
    오 이런거 따로 배울수있는 사이트나 교재 있어요?
    영문도 괜찮아요
  • 규모가 큰 프로그램의 설계 방법론은 추상화(abstraction)에 근거합니다.

    최근에는 함수형 패러다임도 있지만 아직까지도 실무에서는 객체지향이 많이 사용되고 있습니다. 여러 이유가 있지만 레거시에 대한 호환성 문제가 첫 번째인 것 같고, 아직 함수형 패러다임은 컴퓨터 아키텍처를 제대로 활용하지 못해 성능이 안 나오는 문제가 있기 때문이기도 합니다. ( 하지만, 간혹 실무에서 Clojure 같은 언어가 사용되기도 합니다. ) 객체 지향이란 독립적인 기능을 하는 객체를 정의하고, 정의한 객체를 선언하고, 한번 만든 객체를 계속해서 재사용하는데 핵심이 있습니다.

    큰 프로그램이라고 해서 이질적인 일회성 코드들이 수 없이 포함되어 규모가 눈덩이처럼 불어난다면 결국에는 그것을 읽을 수 있는 사람도 유지보수할 수 있는 사람도 없게 됩니다.

    제대로 된 프로젝트라면 큰 단위는 보다 작은 논리 단위로, 그리고 그 작은 단위들은 보다 더 작은 단위로, ...를 반복하여 코어를 이루는 바닥 계층에 이를 때까지 분할되어야 합니다. 우리가 웹 서핑을 할때 전선에 오가는 전기적 신호에 대해 신경쓸 필요가 없는 것처럼, 프로그램을 작성할 때에도 보다 높은 계층의 무언가를 설계할 때 아래에서 무슨 일이 일어나는지 신경 쓸 필요가 없어야 한다는 거죠.

    예를 들자면 점을 찍는 기능을 이용해서 직선을 그리는 함수를 만들고, 직선을 그리는 함수를 이용해서 삼각형을 그리는 함수를 작성하고, ... 하는 식으로요. ( 물론 점 찍는 기능, 선 긋는 기능은 API로 제공되지만 예를 들자면요. )

    하지만 좋은 설계라는 것은 열심히 생각한다고 해서 한번에 나오는 것은 아닙니다. 부수고 다시 만드는 시행착오를 겪어야 하고, 실제 실무에서 사용되는 설계들을 접해보고, 나름의 철학을 가져야 하죠. 이 부분에 있어서는 전공자들에게도 쉬운 부분은 아닙니다.

  • 감히 조언을 드리자면 처음부터 큰 프로젝트를 설계하려고 하시기 보다는, 적당한 규모의 오픈소스 프로젝트를 가지고 놀거나 스스로 작은 프로그램을 만들면서 먼저 감을 잡으시는게 좋을 것 같습니다.

     

    객체지향 패턴에 어느 정도 익숙해지면 웹이든, AI이든 코드를 레퍼런스 보면서 조금씩 실험하고 작성하고, 남이 만든 코드를 그대로 붙여넣는게 아니라 필요에 맞게 수정하여 사용하실 수도 있게 되실 것이고 목표하시는 바에 따라서는 그 정도만으로도 충분할 수 있습니다. 좀 더 깊게 들어가면 문제를 직접 해결하는 코어 알고리즘을 설계하고 성능을 평가하실 수 있는 수준에 이르실 수도 있겠지만요.

번호 제목 글쓴이 날짜
공지 욕설/반말시 글쓰기 권한 영구 정지10 저렴한 개불알꽃 2019.01.26
공지 식물원 이용규칙 (2018/09/30 최종 업데이트) - 학생회 관련 게시글, 댓글 가능17 흔한 달뿌리풀 2013.03.04
123580 [블라인드 처리되었습니다.]1 촉촉한 주걱비비추 2014.03.15
123579 월수 세시 환경과 공해1 거대한 둥근잎유홍초 2014.04.30
123578 높임법 헷2 나쁜 나도송이풀 2014.05.05
123577 역사학개론 시험일 언제인지 아시는분ㅠ 안일한 오리나무 2014.06.03
123576 변전실이 어딘가요?1 큰 개양귀비 2014.06.19
123575 전자출결할때 꼭 학생증 있어야 하나요? 안일한 갯메꽃 2014.09.01
123574 이번토익 듣기 쉬웠나요? 돈많은 명자꽃 2014.11.14
123573 오늘순버안하나요 미운 쉽싸리 2014.12.20
123572 [레알피누] 교육할인스토어라고 아세요?1 훈훈한 풍접초 2015.02.20
123571 택배 처참한 미역줄나무 2015.03.05
123570 [레알피누] 웅비관행정실 ㅠ4 뛰어난 까마중 2015.06.03
123569 금요일9시 일반물리학2 시험범위ㅠ 유쾌한 말똥비름 2015.06.06
123568 [블라인드 처리되었습니다.]4 허약한 단풍취 2015.06.13
123567 [블라인드 처리되었습니다.]1 센스있는 배나무 2015.06.19
123566 형이상학 파르메니데스 잘아시는분들 답변좀부탁드립니다.1 화난 흰꿀풀 2015.12.05
123565 혹시 중앙대학교 안성캠퍼스 교류학생 갔다오신 분 계신가요?2 착실한 수세미오이 2016.01.21
123564 전공 선후수에 관해서 질문드려요1 포근한 꽃다지 2016.01.24
123563 [레알피누] 닭살피부인사람 있나용?ㅜㅜ13 바보 피나물 2016.02.17
123562 공미방 월 수 9시 레포트2 늠름한 갓끈동부 2016.03.15
123561 아직 모집하는 운동 중동 있나요?1 엄격한 털중나리 2016.04.03
첨부 (0)