현재 위치 - 법률 상담 무료 플랫폼 - 특허 조회 - 카프카 특허
카프카 특허
많은 사람들이 대학 시절 C 언어 프로그래밍에서 시작되었다고 믿지만, 이 수업은 단지 프로그래밍 언어가 무엇인지 알려 줄 뿐, 어떻게 프로그래밍을 익힐 수 있는지를 알려 주지는 않았다. (윌리엄 셰익스피어, 햄릿, 공부명언) 그래서 많은 사람들이 졸업을 앞두고 C 를 배웠지만, 자신이 무엇을 할 수 있는지, 어떤 직업을 찾을 수 있는지, 어떤 회사에 갈 수 있는지 모르는 것이 필연적이라는 것을 알게 되었다. 그러므로 이 글은 C 언어의 관점에서 C 언어에 대한 나의 이해에 대해 이야기할 것이다.

이번에는 복잡한 응용 장면이나 언어의 밑바닥 최적화 특성을 먼저 말하지 않는다. 이제 대학에서 C 를 다 배우면 무엇을 할 수 있는지 말씀드리겠습니다. 물론, C 언어와 C 의 밀접한 관계 때문에, 우리는 혼동하고, 이치도 비슷하다.

1 실험실 개발

나는 C 가 세계 최고의 언어라고 감히 말할 수 없지만, C 는 기본적으로 공과 학생의 큰 언어이다. 컴퓨터 전공은 말할 것도 없고, 통신, 전기, 통신 등 많은 공과 전공은 기본적으로 C 를 사용한다.

C 는 프로세스와 객체 지향, 운영 속도가 우수하고 대규모 프로젝트 개발 능력이 뛰어나 대학 실험실을 제패할 수 있다고 합니다. 물론, 우리는 대학 실험실에서 C 와 견줄 수 있는 또 다른 언어는 Matlab 이라는 것을 알고 있다.

예를 들어, 제가 대학원생이었을 때, 왼손은 Matlab 을 시험하고 오른손은 C 를 최적화했습니다. 논문 특허 등은 모두 이 두 언어에 의지해야 한다. 실험실에서 거의 모든 알고리즘이 C/C 로 쓰여졌다는 것을 기억합니다.

C 를 배우기 시작한 사람은 대부분 노공대남이다. 포인터가 아무리 어려워도 허함수 시계가 아무리 무정해도 우리 공공대생의 프로그래밍에 대한 열정은 꺼지지 않는다.

2 백엔드 개발

하지만 직업을 구하는 것은 그렇지 않다. 지금은 황혼이라고 합니다. 알고리즘게시물로 인해 많은 사람들이 백엔드 개발에 몰리고 있다고 합니다.

메인스트림급 백엔드 개발 언어는 Java 와 C 를 비롯해 파이썬, Go 가 뒤를 이었다. 이렇게 여러 해 동안 쓴 노프로그래머로서, 어찌 흥청거리지 않을 수 있겠는가?

그래서 C 를 다 배우면 면접 무대 뒤 개발 일자리가 우선이다. 단지 우리가 항상 언어를 말하는 것이 가장 중요한 것은 아니다. C 를 배운 적이 있는데 백엔드 개발을 찾고 싶은 학우가 가장 중요한 것은 무엇입니까?

사실, 소프트웨어 개발 엔지니어링이 습득해야 할 기술은 몇 가지이며, 각종 경험 공유와 얼굴 수급은 이미 썩었다. (윌리엄 셰익스피어, 윈스턴, 소프트웨어 개발, 소프트웨어 개발, 소프트웨어 개발, 소프트웨어 개발) 그러나 그것들은 단지 큰 방향일 뿐, 많은 개념과 기술점을 포함하고 있어서, 여기서는 일일이 열거할 수 없다. 일반적으로 C 를 통해 적절한 백엔드 개발 직업을 찾고 싶다면 다음과 같은 측면에서 자신을 향상시킬 수 있습니다.

첫째, 견고한 프로그래밍 기초.

이 탄탄한 기초는 먼저 C 언어에 익숙하고, 다른 버전의 언어 특성 (예: C 1 1 과 새로운 C20 의 차이) 을 알고, 일반적인 언어 메커니즘 (예: 다형성, 허함수 테이블, 템플릿 등) 에 대한 자신의 이해를 가지고 있다는 것을 의미한다. ).

어떤 언어를 사용하는지는 중요하지 않지만 최소한 하나의 언어를 능숙하게 사용해야 한다. 어떻게 정통할 수 있습니까? C 기본 메커니즘, 멀티스레드 프로그래밍, 플랫폼 간 프로그래밍에 대해 알아야 합니다.

또한 프로그래밍 능력의 소양은 알고리즘 사상과 데이터 구조에 대한 이해에도 반영됩니다. 결국, 프로그램의 기초는 알고리즘과 데이터 구조입니다. 따라서 체인 테이블, 배열, 이진 트리, 대기열 등과 같은 기본적인 데이터 구조와 탐욕, 분할, 동적 계획 등과 같은 기본적인 알고리즘 사상을 파악하는 것이 가장 좋습니다. 둘째, 시스템의 이론적 지식.

이것이 일반반과 비정규반 사이의 뚜렷한 차이다. 전공이 아닌 많은 학생들은 사실 프로그래밍 능력이 강하지만 체계적인 이론 학습을 받지 못했기 때문에 이론 학습에서는 손해를 볼 수 있다. 백엔드 개발에는 네트워크에서 성능에서 아키텍처에 이르기까지 시스템의 컴퓨터 이론에 대한 지원이 필요합니다.

따라서, 컴퓨터 네트워크, 운영 체제, 컴퓨터 구성 원리, 컴파일 원리, 이 책들도 보지 못한 학생들은 서둘러 책 몇 권을 사서 겁을 내야 한다.

세 번째는 백엔드 기반입니다.

백엔드 개발을 하려면, 적어도 백엔드가 무엇인지 알아야 한다. 즉, 소프트웨어 엔지니어링, 소프트웨어 아키텍처, 디자인 패턴 등의 기본 사항을 이해해야 합니다. 동시에 백엔드가 있으면 어떻게 데이터베이스를 이해할 수 없습니까? 그럼 MySQL, Redis 등 데이터베이스의 기본 작업을 좀 배우려는 거 아닌가요?

물론, 여기서, 아마도 초급일 것이다. 백엔드 개발을 실제로 시작할 때, 마이크로서비스, 미들웨어 (Kafka/Zookeeper/Hadoop 등 관련 개념과 기술에 대한 학습. ) 모두 일정을 잡아야 한다.

물론 학교 모집의 경우 대형 온라인 프로젝트에 대한 경험이 부족해 백엔드 기초에 대한 요구가 높지 않고 프로그래밍 능력과 컴퓨터 이론 기반을 더 많이 볼 수 있다. 그러나 당신이 이미 일하는 학생이라면 전학을 하고 싶다면, 백 엔드 기초는 여전히 중시될 것이다. (윌리엄 셰익스피어, 윈스턴, 일명언)

제 의견으로는, 이 세 가지 점은 현재 인터넷 회사들이 비교적 중시하는 곳이며, 여러분은 자신이 이런 능력을 가지고 있는지 심사숙고할 수 있습니다. (데이비드 아셀, Northern Exposure (미국 TV 드라마), 인터넷명언) 그렇지 않다면 서둘러 준비할 수 있습니다.

3 클라이언트 개발

결국 C 는 매우 성숙한 언어이기 때문에 백엔드 개발 외에도 선택할 수 있는 다른 개발 일자리가 많다. 자연은 클라이언트 개발이다.

C 를 배우는 대부분의 학생들은 C 를 사용하여 데스크톱 소프트웨어를 썼다고 믿는다. 당시 MFC 로 코드북을 두드리면 비교적 간단한 인터페이스를 쓸 수 있을 것으로 예상된다. 그래서 백엔드를 원하지 않는다면 C 의 클라이언트 개발 작업을 찾을 수 있다.

그러나 고객은 쉽지 않습니다. 클라이언트로서도 탄탄한 프로그래밍 기반과 컴퓨터 이론 기반이 필요하며, Windows/C 컴파일 연결 메커니즘, QT 클라이언트 개발 기술 시스템, Windows 메시지 메커니즘 등에 익숙해야 할 수도 있습니다.

따라서 C 를 배우면 업계의 알 수 없는 직업차별사슬에 신경 쓰지 않고 클라이언트 개발 일자리를 찾는 것도 좋다. 백엔드 개발에 비해 클라이언트의 역할을 재검토해야 할 수도 있습니다.