programing

프로그래밍 기술을 향상시키기 위한 매우 작은 프로그램?

luckcodes 2022. 10. 29. 15:48

프로그래밍 기술을 향상시키기 위한 매우 작은 프로그램?

더 나은 프로그래머가 되려면 프로그래밍을 해야 한다는 걸 깨달았어요!그러니까 연습을 많이 하면 할수록 더 잘하게 되는 거죠.

제 문제는 바로 이거예요.저는 현재 대학에 재학 중이고, 수업 시간이 조금 부담스럽고, 자유 시간이 많지 않습니다.큰 프로젝트를 할 수 있을 것 같지도 않고, 특히 그것을 완수하기 위해 동기부여를 할 필요도 없을 것 같고, 학교라는 일을 위해 계속 미루고 있는 것이 더 쉬울 것 같습니다.

그래도 연습하고 싶어요.그래서 저는 프로그래밍에 어려움이 있는 리소스를 찾고 있습니다. 단시간에 완료할 수 있는 리소스를 찾고 있습니다.최소는 아니더라도 10시간 미만(그래서 매일 1시간 이상)이면 이상적으로 해낼 수고를 덜 수 있습니다.

Google Code Jam에 대해 들어본 적은 있지만, Google Code Jam이 지정하는 프로그램의 길이나 스킬 레벨은 잘 모르겠습니다.

제안해 주실 분 있나요?다양한 기능에 대한 튜토리얼 요약도 유용할 수 있습니다.예를 들어, 파일 IO에 대한 튜토리얼은 매우 작은 주제일 수도 있지만 가치가 있습니다(아직 몰랐다면).

코드 카타스를 조사해야 해요. 그들은 당신이 말하는 것과 정확히 일치해요.코딩/사고 능력을 완벽하게 하기 위해 고안된 짧은 운동.

기타 참고 자료:

  1. http://kata.coderdojo.com/wiki/Overview_of_Learning_Resources

프로젝트 오일러는 매우 흥미롭고 쉬운 것부터 매우 어려운 것까지 다양한 수학/숫자 관련 문제를 가지고 있습니다.선택한 언어를 선택하고 솔루션(큰 정수)만 제출할 수 있습니다.올바른 솔루션을 송신하면, 다른 유저가 코멘트나 솔루션을 투고하는 포럼/댓글 페이지에 액세스 할 수 있습니다.

경험상 반복하는 작업을 찾아서 프로그램으로 만들 것을 권장합니다.프로그래밍을 연습하기 위해 바퀴를 다시 발명하는 것도 추천합니다.이미 존재한다고 해서 하지 말라고 하지 마세요.어떻게 작동하는지 모르면 직접 써보세요.

프로그래밍 레벨이 어느 정도인지 정확히 알 수 없지만, 즉석에서 너무 엉뚱한 짓을 하려고 하지 마세요.그것은 단순한 자극제입니다(예를 들어 PS3용 게임을 작성하려고 하는 것).

IO를 사용하여 이미 탐색할 수 있는 경우 컬렉션을 효과적으로 사용하는 방법을 실제로 학습해야 합니다.지금까지의 베스트 프랙티스 과제 중 하나는 Java TreeMap Class를 다시 쓴 것입니다.그것은 큰 도전이었고 나는 그것을 하면서 많은 것을 배웠다.


다음은 연습 할당에 대한 몇 가지 제안입니다.

상당한 양의 정보가 들어 있는 텍스트 파일을 가져와서 원하는 대로 가져오십시오. http://www.gutenberg.org/ 및 다음과 같은 작업을 수행할 수 있는 프로그램을 만드십시오.

  1. 파일을 읽다
  2. 단어 및 단어 모음 만들기
  3. 애너그램 모음 만들기
  4. 단어 모음 및 단어 발생 위치(행 번호, 단어 위치)를 작성합니다.
  5. 파일 내의 단어에 대한 통계(각 단어를 개별로 취급)를 작성합니다.그 전후에 어떤 단어가 발생하는지 확인합니다.
  6. 파일에서 모든 공백을 제거합니다.
  7. 위의 모든 데이터를 자신의 파일에 씁니다.

제가 가장 좋아하는 일 중 하나는 웹 데이터를 조작하고, 투표 웹사이트에 접속하여 투표 데이터가 표 형식으로 있는 페이지를 찾아 다음 작업을 수행하는 것입니다.

  1. 데이터 다운로드
  2. 데이터를 해석하여 표 형식의 데이터를 CSV 파일로 변환합니다.
  3. 오류 없이 Excel로 열기

또는 임의의 사이트를 찾아 데이터를 추출합니다.로봇 친화적인 사이트인 http://www.robotstxt.org/,을 확인하세요.어느 한 사이트가 공격을 받고 있는 것처럼 느껴지지 않도록 하고 싶습니다.대부분의 경우 사이트 이용약관을 읽으면 판매 의사가 없는 한 보고 있는 복사본 1개를 다운로드 할 수 있다고 명시되어 있기 때문에 문제가 되지 않습니다.물론 이것은 사이트마다 다릅니다.


웹 사이트에 접속하여 페이지에서 모든 링크를 프로그래밍 방식으로 가져옵니다.


여기 재미있는 프로그램이 있습니다.Susan Program(Susan이라는 이름이 왜 지어졌는지 기억나지 않습니다)은 처음에 Unix 환경에서 C 프로그램과 2개의 Bourne 셸 스크립트를 사용하여 작성했습니다.이 프로그램의 아이디어는 4개의 하위 프로세스를 구분하여 각각 다음과 같은 작업을 수행하는 것입니다.

아이 1: 파일을 읽고 각 단어와 파일 내 위치의 사전을 만들어 파일로 출력합니다.

Child 2: Child 1의 출력을 가져와 문서를 재구성하고, 이를 파일로 출력합니다.

차일드 3: 차일드 2의 출력을 가져와서 차일드 1이 했던 작업을 다시 수행합니다.

차일드 4: 차일드 3의 출력을 가져와서 차일드 2가 했던 작업을 다시 수행합니다.

여기서의 목표는 Child 4가 원본 파일을 출력하면 원본 파일의 정확한 복제본을 갖는 것입니다.이것은 도전적이고 다소 무의미하지만, 이 연습의 요점은 연습을 하는 것입니다.

당신의 경우, 다른 스레드를 사용할 필요가 없다고 느끼지 마시고, 두 가지 다른 기능을 가진 하나의 프로그램을 사용하여 순서대로 호출하면 됩니다.


다시 말씀드리지만, 아직 이 수준에 도달했는지 확실하지 않지만, 프로그램에 있는 "for" 또는 "foreach" 루프를 반복으로 대체해 보십시오.재귀는 골칫거리지만 알고 이해하는 것은 중요하다.

이것들은 당신의 기술을 연마하는데 정말 도움이 될 몇 가지 제안들입니다.

즐거운 시간 되세요.

저는 SPOJ와 Project Euler가 빠른 프로그래밍 도전과 연습을 하는 것을 좋아합니다.

코드잼은 훌륭한 프로그래밍 경연대회입니다만, 말씀하신 것처럼 대부분의 문제는 초보자를 위한 것이 아닙니다.

10년 때문에 개최되고 있습니다.)
난이도는 2분위의 매우 간단한 문제(하지만 여전히 흥미로운 문제)부터 매우 어려운 문제까지 다양하다.또한 코드를 제출하고 테스트할 수 있는 솔루션과 라이브 환경을 갖춘 사설도 있습니다.다른 사람이 제출한 내용을 통해 배울 수도 있습니다.

문제의 일람을 확인합니다.
탑코더의 또 다른 장점은 정기적인 온라인 경연대회이다.실시간으로 다른 사람들과 경쟁하는 것이 동기 부여에 큰 힘이 된다는 것을 알게 되었습니다.

SPOJ, UVATimus와 같은 문제 아카이브가 더 많이 있지만 해결 방법이나 힌트를 제공하는 경우는 거의 없습니다.

http://codegolf.stackexchange.com은 프로그래밍에 문제가 있을 수 있습니다.그 사이트의 많은 답변은 골프(최소한의 글자수로 프로그램을 구현)이지만, 배울 만한 재미있는 예가 분명히 있습니다.

다음 웹 사이트의 IT 과정에 등록해 보십시오.

이러한 웹 사이트에서는, 프로그래밍 스킬을 연마하기 위한 어려운 연습이 많은 명문 학교의 무료의 교육 IT프로그램을 제공하고 있습니다.저는 이것 때문에 침투, 패턴 인식, 튀는 공, 그리고 더 많은 흥미로운 것들을 프로그램하는 법을 배웠습니다.연습이 완료되면 프로그램이 업로드되고 그에 따라 등급이 매겨집니다(기본적으로 프로그램이 확인됨).

각 코스의 종료시에는, 수료증명서도 받게 됩니다.멋있죠?

언어에 따라 다르지만, 과거에는 http://rubyquiz.com과 http://pythonchallenge.com이 매우 유용했습니다.또한 오픈 소스 이니셔티브에 참여할 수도 있습니다.이는 보통 코드 리뷰를 보다 효율적으로 할 수 있기 때문입니다.

저는 면접 문제 예시로 연습하는 것이 실력을 연마하고 평소에 풀지 못하는 문제를 접하는 좋은 방법이라고 항상 생각해왔습니다.게다가, 만약 당신이 직업을 찾는다면, 그것은 당신에게 더 큰 도움이 될 것입니다.

요전 날 재미로 한 아주 간단한 일이 있어요.

루프를 사용하지 않고 1에서 100까지의 숫자를 인쇄하고 다시 1로 되돌리는 루틴을 작성합니다.

Glassdoor.com에는 실제로 면접에 응한 사람들이 제출한 좋은 면접 질문이 많이 있습니다.

대학에 재학 중이고 코딩 스킬을 향상시키기를 원하기 때문에 하드 카피 책인 코딩 인터뷰 크래킹이 귀하에게 적합할 수 있습니다.이 프로그램에는 기술 분야 최고의 기업과의 인터뷰에 관한 일반적인 질문이나 간단한 정보가 포함되어 있습니다.훌륭한 질문뿐만 아니라, 제대로 된 문제 분석도 있습니다.

[공개:나는 그 책을 소유하고 있지만 그 외에는 관련이 없다.]

프로그래밍을 좋아하고 프로그래머 기술을 향상시키고 싶다면, cocode.co에 접속해야 합니다.StackOverflow와 비슷하지만 질문을 하고 대답하는 대신 프로그래밍 과제를 게시하고 해결하는 데 기반을 둔 소셜 젊은 사이트입니다.아주 쉬운 도전부터 아주 어려운 도전까지.

http://cocode.co

ACM 의 문제를 해결해 주세요.여기에는 수천 개의 문제가 있으며 난이도를 찾을 수 있으므로 어떤 문제를 먼저 수행할지 선택할 수 있습니다.이에 대한 공식 사이트는 다음과 같습니다.

http://uva.onlinejudge.org/ 를 참조해 주세요.거기서 더 배울 수 있어요.

아레핀에 대하여

좀 뻔해 보이지만 최근 Stack Overflow에 대한 regex 질문에 대한 답변만으로 정규 표현 기술이 크게 향상되었습니다.가르침을 통해 문제를 쉽게 설명할 수 있는 조각으로 나눌 수 있습니다.또, 해답의 전부는 아니지만, 가장 많은 것을 알고 있는 경우에, 연구를 지도할 수 있습니다.

초보자용 튜토리얼만큼 좋은 것은 아니기 때문에 이미 어느 정도 숙달된 주제를 찾아보는 것이 좋습니다.SO를 검색하여 해당 토픽에 태그가 달린 질문을 검색하여 답을 구합니다.그것들을 머릿속으로만 코드화하지 말고, 그것들을 쓰고, 그것들을 테스트하고, 그것들을 설명하세요.정답이 확실하지 않으면, 그냥 올리지 말고 쓰세요.

언급URL : https://stackoverflow.com/questions/5208268/very-small-programs-to-improve-programming-skills