네 번째 작업 - 페어 프로그래밍

GitHub의 프로젝트는 주소 https://github.com/TheFatInsect/WordCount.git
파트너 자매 결연 작업 주소 https://www.cnblogs.com/Redwarx008/p/11667362.html

I. 공정 쌍

나는 찌르레기 팀 동료 지아의 매듭이 룸메이트이며 우리 모두 테이블 다음 그래서 특히 편리한 의사 소통을하고, 우리가 좋은 아이디어와 일반적인 전망 때문에 매우 부드러운 자매 결연 성공을 걸어. 우리 둘의 아이디어가 함께하기 때문에 그가 우리의 코드는 독립적으로 두 개의 개별 CPP 파일로 구성되어 선택 있도록하지만, 개인적인 이유로 나는 C와 C ++를 선택했지만 코드가 서로에 기록 된 후 우리는 서로를 볼 코드와 그 코드와 원칙을 달성하기 위해 기능, 그리고 오랜 시간 경험의 교환의 다양한 부분을 설명하기 위해 서로를 듣고, 그래서 우리는 수확을 많이 가지고 있어요.

두 .PSP 테이블

uj7cFK.png

III. 문제 해결 방안을 설명

1. 예비 생각

명령 줄 프로그램을 설계하는 작업은이 작업의 과거 운영 요구 사항과 다른 출력 파일 통계의 내용을 검색 한 후 txt 파일에 명령 창에 cmd를 EXE 파일을 호출하고하는 것입니다 단어 수. 우선 기본적인 기능을 달성하기 위해 : ① ② 단어 문자 ③ 통계 공간 수평 탭을 고려하지 않는 2 통계 파일 통계 아스키 코드 워드는, 줄 바꿈은 영어 알파벳 문자 ④ ⑤ 문구로 간주됩니다. 다음 프로그램 수단을 데이터 부분의 효과 분석 및 가시화를 검출하는 일련의 테스트를 요구한다. 마지막으로, 프로그램의 추가 기능이있다 "그리는 사용자 인터페이스,"즉 : 텍스트 파일을 가져오고 인터페이스에서 직접 단어를 단어를 입력하고 제출 : 텍스트의 단어는 수입에 두 가지 방법을 지원합니다. B. 예외는 사용자 프롬프트를 제공하기위한 복수의 파라미터의 기능을 실현하기 위해, 사용자 조작 버튼을 제공한다. 다. 출력 인터페이스로 직접 결과를 배치하고, 사용자가 지정한 위치에 결과를 저장하기위한 내보내기 버튼을 제공한다. 코드의 일부는 이러한 요구 사항, 완전한 기능을 첫 접촉에 너무 어려운 일이 아니다, 더 배우려고하거나 많이 해결 될 수 단지 cmd를 exe 인 방법을 실행하여, 많은있다되지 않는 것입니다.

정보를 찾으십시오

CSDN 다른 사이트는 여전히 다른 컴파일러 환경에서 서로 다른 언어로 작성된 단어 수 명령 줄 프로그램의 다양성을 많이 찾을 수 있습니다 찾습니다. 뛰어난 학생들이 작업 블로그에 마지막으로 참조하면 다른 대학의 일부를 공원,이 작업을 코딩 시작했다.

참고 링크 : https://www.cnblogs.com/miaobo/p/9696026.html

https://www.cnblogs.com/xiaobao123/articles/9649687.html

IV. 디자인 구현

1. 전체 아이디어 코드 부분

그래서 통계 세 가지 기능은 단어, 문자의 라인을 찾는 데 사용되는 생성, 운영 요구 사항, 기본 기능에 필요한 통계 단어 단어, 문자 및 케이스의 문자 데이터 행 라인을 블로그에 따르면. 세 가지 기능과 유사한 기능, 등 많은 공통점을 작성하는 시간 "어떻게 데이터가 마지막 비트의 TXT 파일을 읽을 여부를 결정하기 위해", "어떻게 내보내려면 다음 결과 파일"과 "sum_words으로 기록 할 수있는 동등한로 데이터를 가져옵니다 함수 모델 "의 총 수 있으므로 기본적으로이 매개 변수의 이름 중 일부 완료 할 수 있습니다를 직접 전환 나머지 완료. 도 다음과 같은 기본 기능을 마음 :

uvKzuD.png

V. 우리는 표준화 된 코드 또는 링크를 개발했다

코드를 실행하도록 컴파일러 환경이 다른 오류 및 다른 버전에 대 오류를 경고 할 것이기 때문에, 그래서 우리는 삭제 될 수 있습니다 헤더 섹션에서 발견 된 몇 가지 코드 문을 추가, 관련 정보에 액세스 할 수 있습니다 문제는 코드 검토 과정에서 발견 중요하지 않은 오류, 즉, 거의 프로그램에 영향하지만, 프로그램이 특정 구현을 관찰 실행되도록 실행할 수 없습니다 잘못된 질문 잘못된 프로그램.

ujLwh6.png

VI. 시간이 성능 향상에 소요 기록에서

성능 개선 1 : 삭제 불필요한 루프 변수는 파일을 읽고 쓰기 및 간단한 동작을 반복하도록 설정되어 있습니다. 성능 분석도는 다음과 같습니다 :

CPU 성능 분석 (1.) 입력 데이터이기 때문에 적은 TXT 파일은 CPU의 작은 공간을 점유

uXMCHs.md.png

uXMiEn.png

uXMabd.png

(2) 호출 외부 코드의 경우 : C 프로그래밍 언어를 사용하므로, 전체 CPP 파일은 100 %로 조합 함수에 의해 얻어진 양 함수 호출의 일부이다.

uXM14x.png

(3)GPU性能分析:和CPU性能分析类似 在Intel(R) Core(TM)i7-8750 [email protected] 2.21GHz的环境下运行程序,基于txt文件中所输入数据的情况,GPU占用情况如下。

uXMYvD.png

七.代码说明

1.head file && main function

head file调用了三个 都是一些很常用的头文件。main function部分由调用三个检索功能的函数构成。

uXMwVA.png

2.三个功能实现函数

(1)record_words

该部分函数编码时需要注意“结束位置的判断”,因为word可以是多个构成的 所以一次空格不能判断word的读取结束 应该判断多次后才能确定word全部读取完 从而以防数据遗漏。

uXM0UI.png

uXM6xS.png

(2)record_chars

同record_words函数类似 结束位置的判断是关键。完成record系列一个函数之后 剩下函数的编码就很简单了

uXM7xU.png

uXMqr4.png

(3)record_lines

uXMXZ9.png

3.通过cmd命令行调用exe的结果

ujTKD1.png

八.心路历程与收获

1.编写代码能力欠缺 掌握语言太少

本次作业要求C#完成 但由于未能熟悉掌握C#相关应用,还是选择了最基础的C来完成。那相应的难度以及繁琐度就会上升很多,浪费了很多时间在机械的语句编写 语法错误审查上面,效率很低。虽然在指导方案的安排中,目前为止已经学了C和C++,但自己不能完全靠老师手把手的教来获取知识,学习技能。既然选择了计算机行业,自己动手的能力一定不能欠缺了,所以打算一定抽时间自学一下现在比较热门的python等语言来开阔自己的视野领域,增长一些见识。

2.结对编程的重要性

"1 + 1> 2"한 두 사람이 같은 목표와 노력을 넣어, 불가피하다. 많은 문제에 자매 결연하는 과정에서, 경우 해결의 약간을 소유하기 전에으로, 종종 그냥 잘 수 있습니다 자신의 지역 자매 결연 파트너를 흐리게, 상상의 비용을 지불하기 위해 더 많은 시간이 필요하고, 그것은 좋은 것입니다 보완 양성하고, 매우 유리한 개발의 양면. 두 번째는 한 쌍의 파트너 사이의 오류 수정 부분도 매우 중요하다 피어 리뷰 기사입니다. 우리는 우리가 확실히 어려운 완전히 조사에서 나올 수있는 코드를 작성했습니다 문제 "방관자 아버지처럼,"일련의 "아무것도 의심하지 그는 그 아무것도 알고", 효과의 시간 피어 리뷰는 매우 분명하다. 조사를 통해 서로 모두 자신을 경고 한 후 인코딩 과정에서 비슷한 문제를 보유하고 있지 않습니다, 서로 문제를 개선하는 데 도움이뿐만 아니라 자신을 마음을 얻었다. 전반적으로, 자신의 자매 결연 파트너들과 좋은 경기를 개인 기술 최적화 및 개인적인 능력의 업그레이드에 매우 도움이된다.

3. 멀티 - 뷰 개발자 웹 사이트 홈 시리즈

내가 가장 흥미로운 생각 작업이 수확입니다 : CSDN 검색, 블로그 공원 개발자 사이트가 예상치 못한 많은 것들을 얻을 수 있습니다. 처음 쓰기 과정이 단어 수의 다양한 버전을 찾아왔다 후 며칠 전에 아무 생각이, 여러 글을 본 적이 때이 프로젝트는 자신의 아이디어를 가지고 천천히, 일자리를 얻기 위해 그들이 시도하려는 첫번째 단계 이전 기능. 인코딩 과정도 매우 거친 후 그러나, 다양한 버그 보고서에 대한 중간 프로그램은 내가 쓰고 싶지 않아 피곤 배는 마침내 버그 중 하나가 해결 된 자신의 지역 사회 후에 내려 가서, 거기에 있습니다. 모든 노력을 느끼는 것은 가치가 전에 순간에 의해 컴파일 된 프로그램은 정말 너무 멋지다. 그래서 손이 점점 더 다른 사람들로부터 배울 것이 더 소유 할 필요는 없습니다,이 그것을 프로그래밍 숨겨진 쌍 생각합니다.

토론의 기록

uvLlRK.png

추천

출처www.cnblogs.com/hz406945634/p/11671004.html