Câu hỏi phỏng vấn .NET Developer.

71 Các câu hỏi phỏng vấn .NET Developer. được chia sẻ bởi các ứng viên

.NET framework đã trở thành một cái tên nổi tiếng và dễ nhận biết trong thế giới khung framework. Ngày càng có nhiều lập trình viên sử dụng .NET cho trong công việc vụ hàng ngày của mình. Do vậy, các công ty đang tìm kiếm những người thành thạo về .NET framework trong việc tạo ứng dụng và phát triển web. Nếu bạn đang muốn ứng tuyển vào vị trí công việc như vậy, hãy tìm hiểu các câu hỏi phỏng vấn .NET để cuộc phỏng vấn trở nên tốt đẹp hơn. Dưới đây là một số câu hỏi phỏng vấn bạn tham khảo

Các câu hỏi phỏng vấn về NET Developer

Câu 1: .NET là gì?

Nhà tuyển dụng có thể giả sử rằng:

Hãy tưởng tượng rằng tôi không biết gì về .NET. Bạn hãy giải thích cho tôi .NET là gì, .NET viết tắt của cái gì, v.v.

Người phỏng vấn muốn bạn giải thích mọi thứ trong câu hỏi phỏng vấn .NET bằng cách diễn đạt riêng của bạn. Tôi sẽ cung cấp cho bạn một số định nghĩa đơn giản, chính xác để bạn có thể đưa ra câu trả lời của mình.

''.NET'' không phải là từ viết tắt cho một cụm từ nào cả. Tuy nhiên, thuật ngữ đầy đủ phải là “Microsoft .NET”, vì Microsoft đã sáng tạo ra khung framework này.

Nói một cách đơn giản, .NET là một khung phát triển phần mềm và trang web. Nó được coi là một trong những framework tốt và đáng tin cậy. Tuy nhiên, việc học và tìm hiểu về .NET framework không phải đơn giản. Rất nhiều người yêu thích .NET vì ‘khả năng tương tác ngôn ngữ’ của nó - bất kỳ ngôn ngữ nào trong .NET đều có thể sử dụng code được viết bằng ngôn ngữ khác.

Các nhà phát triển khác đánh giá cao .NET còn là vì nó có nhiều chức năng và cài đặt sẵn.

Câu 2: .NET hỗ trợ bao nhiêu ngôn ngữ?

Tại thời điểm viết bài viết này, thì .NET hỗ trợ 44 ngôn ngữ khác nhau.

Câu 3: Tuổi thọ của các mục trong ViewState là bao lâu?

Các mục trong ViewState sẽ tồn tại cho đến khi trang mà chứa chúng ngừng hoạt động.

Câu 4: ‘CTS’ là gì?

CTS là từ viết tắt của Common-Type System (Hệ thống loại chung). Hệ thống này ra lệnh các loại dữ liệu được sử dụng trong hệ thống.

Bạn nên chú ý đến các câu hỏi liên quan đến CTS - đây là các câu hỏi phỏng vấn .NET khá quan trọng.

Câu 5: Định nghĩa ‘encapsulation’.

Encapsulation là một chức năng bao gồm các phương pháp và dữ liệu khác nhau trong một dự án. Điều này được thực hiện để đối tượng của chương trình có thể thực hiện các chức năng một cách trơn tru và không có bất kỳ lỗi nào.

Câu 6: Điểm khác biệt giữa ‘class’ (lớp) và ‘object’ (đối tượng) là gì?

Đây là một trong những câu hỏi phỏng vấn .NET dựa trên định nghĩa, câu hỏi này khá dễ nếu bạn đã quen thuộc với các ngôn ngữ lập trình .NET.

Nói một cách đơn giản, một “object” (đối tượng) là một cái gì đó xảy ra hoặc nằm trong “class” (lớp). Lớp (class) định hình đối tượng trông như thế nào, cách chúng hoạt động và loại thuộc tính nào chúng có. Đổi lại, các đối tượng hành động tương tự tạo nên các lớp đó.

Câu 7: Có sự khác biệt giữa ‘debug’ và ‘trace’ hay không?

Câu trả lời là có. Lớp Trace có thể được sử dụng để gỡ lỗi và phát hành một số bản dựng nhất định, trong khi Debug chỉ được sử dụng để gỡ lỗi.

Câu hỏi này có thể được coi là một câu hỏi mẹo trong danh sách câu hỏi phỏng vấn .NET vì bạn dễ dàng quên chức năng bổ sung của Trace.

Câu 8: Điểm khác biệt giữa ‘in-process’ và ‘out-of-process’ là gì?

Cả hai khái niệm này đều liên quan đến quản lý bộ nhớ phiên. In-process (quá trình lưu trữ trong) lưu trữ tất cả dữ liệu từ một phiên phát triển trên máy chủ web. Trái ngược với điều đó, out-of-process  (quy trình lưu trữ ngoài) lưu trữ cùng một dữ liệu trên một khu vực quản lý bộ nhớ ngoài. Có lẽ một trong những khu vực lưu trữ bộ nhớ ngoài phổ biến nhất sẽ là SQL server.

Câu 9: MSIL là gì?

MSIL (Microsoft Intermediate Language) có nghĩa là Ngôn ngữ trung gian của Microsoft. Nó được sử dụng để xác định các giá trị, lưu trữ bộ nhớ và các tác vụ cao cấp tương tự khác. Mỗi mã code mà .NET sử dụng trước tiên phải đi qua MSIL.

Câu 10: Điểm khác biệt giữa ‘managed code’ và ‘unmanaged code’ là gì?

Managed code (Mã được quản lý) là một loại mã code được tạo và biên dịch trong .NET framework. Ngược lại, unmanaged code (mã không được quản lý) đến từ một khung framework xây dựng phần mềm khác và mang theo tất cả các tính năng và cài đặt của khung khác.

Câu 11: Có thể cài đặt thủ công bộ đếm thời gian ‘session out’ không?

Câu trả lời là có. Đây là một câu hỏi phỏng vấn .NET với các câu hỏi mở rộng sau đó, vì nó sẽ không chỉ dừng lại ở “có” hay “không”.

Câu hỏi mở rộng có thể là “Bằng cách nào?” Và bạn phải thực sự thực hiện và truy cập web.config.

Câu 12: Có thể kết hợp các ngôn ngữ khác nhau trong thư mục ‘App_Code’ không?

Câu trả lời là không. Tập tin bạn đang làm việc phải được viết bằng một mã code cụ thể. Bạn không thể kết hợp các ngôn ngữ coding trong thư mục.

Câu 13: Có sự khác biệt giữa ‘stack’ và ‘queue’ hay không?

Câu trả lời sẽ là có. Một cách giải thích ngắn gọn và rõ ràng có thể là stacks là LIFO và queues là FIFO.

LIFO có nghĩa là Last in, first out (“nhập sau, xuất trước”). Stack xử lý các loại giá trị theo hệ thống phân cấp từ trên xuống. Mặt khác, FIFO có nghĩa là First-in, first-out (“nhập trước, xuất trước”). Queues tuân theo nguyên tắc này và chèn các mục từ phía dưới trong khi xóa các mục ở phía trên.

Kinh nghiệm phỏng vấn lập trình viên .NET thành công

Để có thể phỏng vấn thành công vị trí lập trình viên .NET, bạn hãy nhanh tay lưu lại những kinh nghiệm sau đây.

Trước khi phỏng vấn

Để có thể đến được vòng phỏng vấn, bạn cần chuyển bị cho mình 1 bản CV mô tả kinh nghiệm, các dự án đã từng thực hiện. Đối với những bạn sinh viên mới ra trường, có thể để đồ án tốt nghiệp và các chứng chỉ, công việc parttime mà bạn đã từng làm. Bạn có thể tham khảo các mẫu CV tốt nhất tại TopCV.

Sau khi đã vượt qua vòng CV, trước khi đi phỏng vấn bạn sẽ cần lưu ý những điều sau.

Chuẩn bị kiến thức chuyên môn kỹ càng

Đối với vị trí lập trình viên .NET, bạn sẽ cần chuẩn bị kiến thức cơ bản về lập trình OOP, ngôn ngữ lập trình C#, ASP.NET MVC, Web API, Entity Framework, ADO.NET.

Ngoài những kiến thức trên, bạn cũng cần phải lưu ý thêm về:

  • Kỹ năng Unit Test: Kỹ năng viết đoạn code kiểm thử mức đơn vị, trong .NET thông thường sẽ sử dụng MSUnit.
  • Kỹ năng về SQL Server
  • Kỹ năng quản lý Source Code
  • Một số Design Pattern
  • Kiến thức về Frontend
  • Tối ưu hóa code, cách viết code sạch

Trong quá trình phỏng vấn

Trong quá trình phỏng vấn, ngoài việc trả lời những câu hỏi chuyên môn về vị trí lập trình viên .NET, bạn sẽ cần phải lưu ý thêm một số điều sau:

  • Lựa chọn trang phục phù hợp cho bản thân
  • Nên thể hiện thái độ tự tin khi phỏng vấn để nhà tuyển dụng có thể tin tưởng hơn vào những câu trả lời của bạn
  • Tìm hiểu trước thông tin cơ bản của công ty trước khi đi phỏng vấn
  • Nên chuẩn bị trước 1 đến 2 câu hỏi để hỏi ngược lại nhà tuyển dụng khi nhận được câu “Bạn có thắc mắc gì về công việc/Bạn có thắc mắc gì với công ty không?”
  • Gửi lời cảm ơn đến người phỏng vấn sau khi hoàn thành buổi phỏng vấn. Điều này sẽ thể hiện sự chuyên nghiệp của bạn

Câu hỏi phỏng vấn

.NET Developer. được hỏi... 26/10/2023

Nền tảng lập trình .Net là gì?

1 câu trả lời

  • .NET không phải là một ngôn ngữ lập trình, mà là một nền tảng cho phép các ngôn ngữ lập trình khác nhau hoạt động. Chẳng hạn, Java hoặc C# được sử dụng để tạo các ứng dụng hoặc trang web trên nền tảng lập trình .NET
  • Đây là một nền tảng lập trình có mã nguồn mở cho phép các nhà phát triển tạo các trang web hoặc ứng dụng thuộc hệ điều hành Windows, Linux, và macOS.
  • Microsoft đã tạo ra nền tảng này và nền tảng .NET chủ yếu được sử dụng với hệ điều hành Windows.
.NET Developer. được hỏi... 26/10/2023

Cấu trúc chính của NET là gì?

1 câu trả lời

Cấu trúc chính của .NET là mã được viết bởi các lập trình viên hàng đầu của Microsoft. Các lập trình viên khác sử dụng nền tảng này để phát triển các dịch vụ và ứng dụng web.

.NET Developer. được hỏi... 26/10/2023

Tại sao công nghệ .NET được người dùng ưa chuộng?

1 câu trả lời

Người dùng ưa chuộng .NET bởi các ưu điểm như:

  • Tiết kiệm thời gian và tiền bạc bằng cách tăng hiệu quả: NET cho phép người dùng tiết kiệm thời gian và tăng tốc độ phát triển của các ứng dụng và trang web.
  • Bảo mật cao và giảm xung đột: Do mô hình bảo mật được thiết kế từ dưới lên theo hệ thống evidence-based tinh vi giúp nền tảng .NET có mức độ bảo mật cao.
  • Đa ngôn ngữ: .NET hỗ trợ nhiều ngôn ngữ. Nó cho phép các nhà phát triển viết ứng dụng bằng nhiều ngôn ngữ và tích hợp chặt chẽ chúng.
  • Tận dụng các dịch vụ có sẵn: Hệ điều hành Windows cung cấp hàng loạt dịch vụ tương thích trên tất cả các nền tảng. Đây là một lợi ích khác khiến Dotnet trở nên hấp dẫn đối với người dùng
.NET Developer. được hỏi... 26/10/2023

.NET Framework gồm những thành phần nào?

1 câu trả lời

Kiến trúc của .NET Framework được xây dựng với ba thành phần chính:

  • Ngôn ngữ
  • Class Library – FCL
  • Class CLR
.NET Developer. được hỏi... 26/10/2023

Ngôn ngữ trong NET có mấy loại?

1 câu trả lời

Nền tảng  .NET có ba loại ngôn ngữ khác nhau:

  • ASP.net: Với khả năng dựa trên nền tảng web để phát triển thêm, các ứng dụng có thể chạy trên các trình duyệt phổ biến như Chrome, Internet Explorer, Cốc Cốc,…
  • WinForms: Nó có thể chạy trên máy của người dùng cuối, cho phép tạo và phát triển các ứng dụng biểu mẫu, nổi bật nhất là Notepad.
  • ADO.Net: Các ứng dụng được viết bằng ngôn ngữ này hoạt động tốt với cơ sở dữ liệu Microsoft SQL Server hoặc Oracle.
.NET Developer. được hỏi... 26/10/2023

Class Library – FCL là gì?

1 câu trả lời

  • Class Library của .NET Framework hay lớp Thư viện là một trong những hàm có chứa các phương thức đáp ứng các nhu cầu khác nhau của người dùng. Trong số đó, System. * hoặc Microsoft.*. được coi là phương thức cơ bản nhất.
  • Do đó, các phương thức có cùng tên, chẳng hạn như Microsoft hoặc System được tham chiếu ngay khi dấu * xuất hiện. Và nó bao gồm các khoảng trắng để biểu thị sự phân tách hợp lý.
.NET Developer. được hỏi... 26/10/2023

Class CLR là gì?

1 câu trả lời

Sở hữu lớp Thời gian chạy ngôn ngữ chung, nên Class CLR cho phép .NET Framework thực thi các chương trình sẵn có. Class CLR bao gồm các tính năng sau:

  • Khả năng loại bỏ các thành phần không còn cần thiết.
  • Khả năng xử lý các lỗi không mong muốn có thể xảy ra trong quá trình thực thi trong các môi trường CLR khác.
  • Có thể chạy các chương trình được viết bằng ngôn ngữ lập trình C # hoặc VB.Net. Quá trình này thường sẽ đi qua trình biên dịch cho các ngôn ngữ trước khi chạy qua Trình thông dịch ngôn ngữ chung (Common Language Interpreter).
.NET Developer. được hỏi... 26/10/2023

10 kỹ năng giúp lập trình .NET thành công là gì?

1 câu trả lời

10 kỹ năng đó là:

  • Tính tỉ mỉ, cẩn trọng: Bởi chỉ cần sai một lỗi chính tả nhỏ sẽ khiến chương trình của bạn gặp lỗi lớn.
  • Sự kiên nhẫn: Lập trình phần mềm nói chung có khối lượng công việc khá lớn. Nếu không nhẫn nại, bạn không thể liên tục thử nghiệm và cải tiến để phát triển ra các ứng dụng xuất sắc.
  • Tư duy logic: Bạn luôn cần sử dụng đầu óc để xem xét và giải quyết vấn đề, để từ đó đưa ra cách giải quyết tốt nhất.
  • Khả năng làm việc theo nhóm: Một dự án thường có nhiều lập trình viên tham gia. Do vậy, bạn cần phối hợp ăn ý với họ để ra sản phẩm cuối cùng.
  • Khả năng giao tiếp và lắng nghe tích cực: Bạn sẽ phải sử dụng khả năng giao tiếp để trình bày ý kiến cá nhân của mình, trao đổi thông tin với đồng đội. Và việc học cách lắng nghe để tiếp thu những đóng góp từ người khác một cách có chọn lọc cũng rất quan trọng.
  • Kỹ năng giải quyết vấn đề: Trong quá trình test phần mềm/ ứng dụng chạy trên nền tảng  .NET, thỉnh thoảng sẽ có các lỗi từ đơn giản đến phức tạp. Bạn cần phải có kỹ năng xử lý, tìm ra nguyên nhân và đưa ra giải pháp nhanh chóng.
  • Tình tò mò và ham học hỏi: Với nghề này, bạn luôn cần cập nhật những xu hướng mới và ứng dụng nó vào trong phát triển phần mềm.
  • Khả năng quản lý thời gian: Khối lượng công việc hàng ngày của một lập trình viên khá nhiều. Bạn cần sắp xếp và cân bằng với cuộc sống nhưng vẫn đảm bảo đúng tiến độ dự án.
  • Khả năng tiếng Anh: Hầu hết tài liệu tham khảo của ngành đều được viết bằng tiếng Anh. Cho nên, bạn cần có khả năng đọc hiểu tiếng Anh tốt để nắm rõ thông tin được truyền tải.
.NET Developer. được hỏi... 26/10/2023

Một số ưu điểm nổi bật của Net là gì?

1 câu trả lời

Một số ưu điểm của .NET như sau:

  • .Net có khả năng tương thích với đại đa số các mã thực hiện cũng như lưu trữ của đối tượng. 
  • .Net có thể tạo ra sự nhất quán dành cho mọi trải nghiệm của nhà phát triển với các ứng dụng khác nhau ví dụ như: App web, App windows,..
  • .Net tạo ra được những ứng dụng đơn giản dựa trên Web-based, Form-based dựa trên .NET framework.
  • .Net có khả năng xây dựng được toàn bộ thông tin liên lạc cũng như các tiêu chuẩn của ngành công nghiệp dựa vào những khả năng tích hợp của hầu hết các mã thuộc nền tảng .Net.
  • .Net có thể cung cấp một môi trường thực thi với mục đích giải quyết các rắc rối, xung đột liên quan đến hiệu suất. Từ đó, thúc đẩy cho quá trình phát triển và triển khai cho mã an toàn. 

 

.NET Developer. được hỏi... 26/10/2023

Một số kiến thức hỗ trợ cho kỹ năng trong .Net?

1 câu trả lời

Đó là:

  • Web API
  • Entity Framework
  • LINQ
  • AngularJS
  • NodeJS
.NET Developer. được hỏi... 26/10/2023

Các từ viết tắt phổ biến được sử dụng trong .NET là gì?

1 câu trả lời

Ba từ viết tắt thường xuất hiện đối với các nhà phát triển sử dụng .NET là:

  • IL -  viết tắt của Ngôn ngữ trung gian (Intermediate Language).
  • CIL - viết tắt của Ngôn ngữ trung gian chung (Common Intermediate Language).
  • CLI - viết tắt của Cơ sở hạ tầng ngôn ngữ chung (Common Language Infrastructure).
.NET Developer. được hỏi... 26/10/2023

Các đối tượng và class được sử dụng trong .NET như thế nào?

1 câu trả lời

Trong .NET, một đối tượng xảy ra khi nhà phát triển tạo một class. Một class hoạt động như một template để tạo nhiều đối tượng hơn. Class định nghĩa một đối tượng dựa trên các đặc điểm, chức năng, thuộc tính và phương thức của nó để sử dụng

.NET Developer. được hỏi... 26/10/2023

Dịch vụ Web .NET là gì?

1 câu trả lời

  • Dịch vụ web là một thành phần có thể tái sử dụng mà các developer có thể sử dụng để làm cho ứng dụng của họ có thể truy cập qua internet và tương tác với các ứng dụng hoặc chương trình online khác.
  • Các dịch vụ này sử dụng các giao thức web và định dạng dữ liệu như HTTP, XMLSOAP để truy cập dữ liệu trên các nền tảng và ngôn ngữ lập trình.
  • .NET bao gồm nhiều class khác nhau cho phép tương tác với các dịch vụ web khác nhau.
.NET Developer. được hỏi... 26/10/2023

OOP liên quan đến .NET là gì?

1 câu trả lời

OOP là viết tắt của lập trình hướng đối tượng và các nhà phát triển có thể sử dụng nó trong .NET để tạo các class mới với các phương thức, thuộc tính, sự kiện và hơn thế nữa. Nó cũng cho phép các developer tạo các chương trình module mà họ có thể sử dụng làm nền tảng cho các ứng dụng mới.

Các OOP thường có 4 đặc điểm chung, đó là tính đóng gói, tính đa hình, tính kế thừa và tính trừu tượng.

.NET Developer. được hỏi... 26/10/2023

Khác biệt giữa code được quản lý và không được quản lý trong .NET?

1 câu trả lời

  • Framework .NET sử dụng Common Language Runtime (CLR) để chạy các chuỗi code. Khi một developer viết mã bằng một trong các ngôn ngữ mã hóa của .NET là C# hoặc VB (Visual Basic .NET) để sau đó chạy trong CLR, chúng sẽ trở thành code được quản lý. 
  • Code được quản lý có thể chạy trên bất kỳ nền tảng nào vì nó dựa trên CLR thay vì hệ điều hành của máy tính. Code không được quản lý mô tả code được viết bằng các ngôn ngữ khác như C hoặc C++. Điều này có thể có nghĩa là các developer có thể gặp nhiều thách thức hơn khi truy cập nó trên các nền tảng vì nó không sử dụng CLR để làm như vậy.
.NET Developer. được hỏi... 26/10/2023

Khi nào sử dụng .NET Web Forms thay vì ASP.NET MVC là tốt nhất?

1 câu trả lời

  • Nhiều developer sử dụng ASP .NET MVC vì khả năng chia nhỏ các ứng dụng thành các mô hình, khung nhìn và bộ điều khiển rời rạc, giúp việc kiểm tra chúng trở nên dễ dàng.
  • Tuy nhiên, .NET framework và các Web Forms của nó có thể thích hợp hơn cho các developer muốn tạo các ứng dụng đơn giản một cách nhanh chóng, vì việc sử dụng .NET Web Forms không yêu cầu họ học các ngôn ngữ lập trình hoặc mã hóa mới
.NET Developer. được hỏi... 26/10/2023

Dữ liệu JSON là gì và sử dụng như thế nào trong .NET?

1 câu trả lời

  • JSON là viết tắt của JavaScript Object Notation và cho phép các developer tổ chức dữ liệu của họ theo cách dễ đọc.
  • Nó cũng cho phép chỉnh sửa nguồn cấp dữ liệu JSON trên các website khác và triển khai chúng một cách nhanh chóng.
  • JSON giúp xác định các class cũng sử dụng các phần tử từ văn bản JSON
.NET Developer. được hỏi... 26/10/2023

Native Image Generator trong .NET là gì?

1 câu trả lời

Native Image Generator biên dịch các tổ hợp .NET thành machine code để các developer sử dụng trên một bộ xử lý cụ thể. Điều này có thể bỏ qua các hằng số của JIT, chỉ biên dịch mỗi phương thức một lần.

.NET Developer. được hỏi... 26/10/2023

 .NET khác với Laravel như thế nào?

1 câu trả lời

Laravel là một framework phát triển khác mà các nhà Web Developer có thể quen thuộc. .Net và Laravel khác nhau về các khía cạnh như ngôn ngữ chúng sử dụng, các biện pháp bảo mật mà chúng thực hiện và việc sử dụng thư viện bên thứ ba

.NET Developer. được hỏi... 26/10/2023

Tôi có cần phải viết lại/xây dựng lại các ứng dụng của mình để sử dụng .NET Framework 4.6.2 và các phiên bản mới hơn không?

1 câu trả lời

.NET Framework 4.6.2 và các phiên bản mới hơn là các bản cập nhật tương thích, tại chỗ của .NET Framework 4, 4.5, 4.5.1, 4.5.2, 4.6 4.6.1. Điều này có nghĩa chúng tôi kỳ vọng những ứng dụng được xây dựng trên các phiên bản .NET 4.x cũ sẽ tiếp tục chạy trên .NET Framework 4.6.2 và các phiên bản mới hơn. Việc viết lại các ứng dụng để tương thích với những phiên bản này là không cần thiết.

Đang xem 1 - 20 trong 71 câu hỏi phỏng vấn