Tôi có bằng về khoa học máy tính. Nó đã được tuyệt vời để mở cửa, nhận được một công việc. Theo như giúp tôi trong lĩnh vực lập trình C # .NET chuyên nghiệp (nền tảng và ngôn ngữ phổ biến nhất trong khu vực tôi làm việc nếu không phải là toàn bộ các quốc gia thống nhất trên tay hệ điều hành phổ biến nhất trên thế giới ) thì hầu như không hữu ích.
70% + mã được viết bằng C (vì có nhiều thiết bị nhúng hơn các ứng dụng cấp cao). Theo các tìm kiếm công việc phổ biến như xúc xắc hoặc chỉ số TIOBE, Java là ngôn ngữ lập trình phổ biến nhất cho doanh nghiệp (vì có nhiều máy chủ hỗ trợ Unix / Linux hơn máy chủ Windows.) Có nhiều điện thoại thông minh và máy tính bảng (nền tảng điện toán của tương lai) chạy một số biến thể của Linux hoặc Mac OS so với Windows, được lập trình trên mọi thứ trừ C # hoặc .NET.
Nhìn vào bộ định tuyến của bạn ở nhà, nhìn vào điện thoại di động của bạn, nhìn vào máy tính bên trong xe của bạn, nhìn vào lò vi sóng kỳ dị ở nhà, tại các bộ điều khiển bên trong hệ thống A / C của bạn, bên trong điện thoại của bạn và fax và máy in / máy quét. Nhìn vào số lượng thiết bị máy tính (vượt trội so với các hệ thống cửa sổ.)
Bạn có nghĩ rằng chúng được lập trình trong C #?
Nếu bạn thực sự tin rằng .NET hoặc C # là những nền tảng phổ biến nhất trên thế giới, bạn có thể muốn quay lại trường CS của mình và yêu cầu hoàn lại tiền.
Tại sao bạn nghĩ rằng nó giúp bạn như một lập trình viên trong sự nghiệp chuyên nghiệp của bạn (bên ngoài phun ra thuật toán prims để gây ấn tượng với một số người phỏng vấn)?
Có lẽ bởi vì có rất nhiều về lập trình hơn là làm các trang web động và phát triển ứng dụng doanh nghiệp cơ bản? Vì bạn thậm chí không cần bằng BS, bằng AA - Tôi biết vì tôi đã bắt đầu sự nghiệp lập trình của mình với bằng AA và chậm nhưng chắc chắn làm việc với CS và sau đó làm việc ở trường tốt nghiệp trong khi làm việc toàn thời gian với tư cách là nhà phát triển .
Có phát triển nhúng, có phát triển trình điều khiển thiết bị, có phát triển hệ điều hành, có phát triển thuật toán, tín hiệu, truyền thông, giao thức mạng, phát triển công cụ cơ sở dữ liệu, phát triển hệ thống tệp, tính toán phân tán, trình biên dịch. Không nghiên cứu, nhưng thực tế làm việc trong các tổ chức vì lợi nhuận. Không có năng khiếu tự nhiên, người ta thường không thể hack nó trong bất kỳ lĩnh vực công nghiệp nào mà không có bằng CS (đôi khi thậm chí không có bằng BS.)
Một người có bằng CS và chú ý đến nó biết điều này. Sao bạn không có?
Trong thế giới thích ứng ngày nay, một bộ óc nhanh nhạy, giao tiếp mạnh mẽ, OO và các kỹ năng thiết kế cơ bản cho phép nhà phát triển viết phần mềm mà khách hàng sẽ chấp nhận.
OO ra đời vì CS. Và hầu hết những người nghĩ rằng họ làm OO thậm chí không thể làm tốt công việc. Chỉ cần nhìn ra bên ngoài và nhìn vào trạng thái tẻ nhạt của phần mềm (đặc biệt là Java và .NET, không đề cập đến PHP.) Một nền tảng CS vững chắc (hoặc bằng tốt nghiệp về một loại kỹ thuật nào đó) không đảm bảo hiểu biết tốt về OO 100% và kỹ năng phân tích, nhưng nó thường giúp. OTH, không có nền tảng CS cơ bản thường là cờ đỏ khi nói đến OO và các kỹ năng phân tích. Chúng tôi có đủ bằng chứng thực nghiệm trong ngành để ủng hộ tuyên bố này.
Những kỹ năng này chỉ được lướt qua trong chương trình cs.
Tùy thuộc vào chương trình CS và tùy thuộc vào học sinh. Ít nhất là đối với tôi, tôi đã thấy rất nhiều khóa học tốt về thiết kế, phân tích OO, các công cụ và thực tiễn thương mại, chúng tôi đã có các khóa học hợp tác với các công ty địa phương và thực tập, các dự án do công ty tài trợ và nghiên cứu, viết kỹ thuật, bạn đặt tên cho nó. Xin lỗi, tôi không thể liên quan hoặc hiểu tuyên bố này.
Trong tâm trí của tôi, đọc một cuốn sách C # 500 trang của Classicalx cung cấp một bộ kỹ năng có thể sử dụng hơn rất nhiều so với 4 năm của các khóa học blaster comp sci math.
Một lần nữa, tùy thuộc vào công việc bạn làm. Ngay cả trong doanh nghiệp, tôi đã sử dụng CS của mình để thực sự sửa chữa mọi thứ hoặc cải thiện. Tất cả những gì liên quan đến mô hình hóa, kiến trúc, điện toán phân tán, bảo mật và hiệu suất cao, tính sẵn sàng cao và khả năng chịu lỗi. Tôi đã học tất cả những thứ đó trong CS.
Không có gì sai với việc sử dụng một cuốn sách Wrox để có được một là bối cảnh cụ thể , công nghệ cụ thể bộ kỹ năng. Tôi tự làm như vậy. Nhưng nền tảng CS của tôi cho tôi bối cảnh để làm việc. Không có nền tảng CS của tôi, tất cả những gì tôi có thể làm là lập trình, viết mã (đó là tất cả những gì tôi có thể làm khi tôi chỉ có bằng cấp AA khi bắt đầu sự nghiệp.)
Nhiều người không đồng ý.
Đáng ngạc nhiên, không.
Vì vậy, tại sao một mức độ khoa học máy tính quan trọng?
Bạn nghĩ ai đến với google, hadoop, cassandra hoặc các công cụ cơ sở dữ liệu hiệu suất cao? Bạn nghĩ ai viết kernel hệ điều hành Windows? Bạn nghĩ ai sẽ lập trình các công cụ yêu thích mà bạn sử dụng để thực hiện phát triển C # của mình.
Một điều tôi chắc chắn là các công cụ bạn sử dụng để phát triển C #, có một anh chàng CS đằng sau nó.
Việc bạn có cần bằng cấp CS hay không phụ thuộc vào loại công việc bạn làm, loại công việc bạn muốn làm, loại công việc bạn có khả năng làm.
Có rất nhiều công việc trong phát triển doanh nghiệp và web không yêu cầu bằng cấp CS. Tôi cấp điều đó. Tôi cũng biết rằng thế giới lập trình rộng hơn rất nhiều so với chỉ hai lĩnh vực đó, với nhiều lĩnh vực (hầu hết trong số chúng thực sự) yêu cầu bằng CS trở lên.
Bạn có bằng CS, làm sao bạn không biết đó là một bí ẩn.