Hướng dẫn python certification hackerrank - chứng nhận python hackerrank
Theo số liệu do HackerRank công bố, hiện nay HackerRank đã xếp hạng hơn 1,5 triệu developer toàn cầu dựa trên tốc độ và độ chính xác. Những kết quả gần đây cũng cho thấy Trung Quốc là quốc gia có lập trình viên xếp thứ hạng cao nhiều nhất, sau đó là Nga và Ba Lan. Show Những công ty lớn như Amplify, Quora và Capital One đều đang sử dụng HackerRank for Work – cho quá trình tuyển dụng mảng kỹ thuật. Ngoài là thuớc đo kỹ năng, HackerRank cũng tổ chức một số chương trình hackathons, như CodeSprints, cũng là một cách để các công ty tìm kiếm những ứng viên tiềm năng. HackerRank là một website cho phép các lập trình viên trau dồi, học hỏi và rèn luyện kỹ năng của bản thân. Website này sẽ yêu cầu những người tham gia đưa ra lời giải cho những “thử thách lập trình” hay những bài toán lập trình. Qua đó những kết quả và tốc độ giải đáp vấn đề sẽ được HackerRank sử dụng để đánh giá và xếp hạng các lập trình viên tham gia. Vì sao chọn HackerRankNgoài việc ghi điểm trong mắt nhà tuyển dụng, các developer cũng có thể luyện code trên HackerRank. Những ưu điểm có thể kể về HackerRank như là: HackerRank có hệ thống compiler online, từ đó không cần cài thêm bất kỳ compiler nào trên máy và có thể lâp trình trực tiếp trên Web. Thứ hai, HackerRank có đa dạng các bài code (có sẵn cả unit test để biết đúng sai) để các coder luyện tập và thử sức. Sau khi cải tiến bản thân qua các bài code, các coder có sẵn nguồn các bài thi tuyển dụng của các công ty lớn toàn thế giới. Lưu ý khi học code trên HackerRankfunction Rectangle(a, b) { } Đây là dòng đầu tiên của một hàm mà họ yêu cầu bạn viết trong 10 Days of Javascript. Viết đối tượng hình chữ nhật là ngày thứ 4 trong 10 ngày. Hầu hết các coder sẽ dùng tiếp dòng đầu tiên này và điền vào chỗ trống những gì còn thiếu giữa hai dấu {}. Đây có lẽ cũng là điều mà HackerRank mong đợi. Nhìn dòng đầu tiên này thì bạn có thể hiểu rằng a là một cạnh của hình chữ nhật và b là cạnh còn lại. Nếu bạn đọc mô tả đề bài, thì sẽ biết rõ ràng rằng a là chiều dài của hình chữ nhật và b là chiều rộng. Tại sao lại cần bí mật?Batman cần giữ kín danh tính của mình vì anh thường dành buổi tối để làm những việc phạm pháp, dù đó là việc tốt, anh ấy vẫn có thể bị bắt. Để có thể được tự do và mang đến công lý cho người khác, anh ấy không thể để người khác biết rằng mình chính là Bruce Wayne. Nhưng, Tác hại của cách đặt tên đó là gì?Trong bài tập HackerRank này, bạn sẽ chỉ viết vài dòng code thôi. Chưa kể hai tham số logic duy nhất để tạo một hình chữ nhật là chiều dài và chiều rộng của nó. Bạn có thể sẽ không quên a và b là gì trong đoạn code. Mặc dù vậy, không chỉ có bạn đọc code của bạn, vẫn còn những người khác nữa và có thể nhiều người trong số họ không thể biết được a và b là gì. Bạn có thể cảm thấy đoạn code rất ngắn gọn và thông minh, và dường như HackerRank làm vậy rất ổn. OK, nhưng nghĩ một chút xem, trong công việc có bao giờ bạn viết app, chương trình nào mà lại có ít code như vậy không? Nếu là một ứng dụng có 10.000 dòng code, mỗi hàm có các tham số với chữ cái a, b, c, d, e thì câu chuyện sẽ rất khác. Bạn có thể đọc hiểu code này vì bạn viết ra nó, nhưng nếu ai đó được bàn giao code này từ bạn có lẽ họ sẽ vừa đọc vừa chửi thầm trong bụng. Bạn có thể nghĩ Devon khó tính hoặc tìm đúng ví dụ tệ nhất trên nền tảng này để chê bai. Tất nhiên, không phải mọi bài tập trên HackerRank đều sử dụng tên biến tối nghĩa, nhưng có nhiều bài tập như vậy. Đây là một ví dụ khác: 'use strict'; process.stdin.resume(); process.stdin.setEncoding('utf-8'); let inputString = ''; let currentLine = 0; process.stdin.on('data', inputStdin => { inputString += inputStdin; }); process.stdin.on('end', _ => { inputString = inputString.replace(/\s*$/, '') .split('\n') .map(str => str.replace(/\s*$/, '')); main(); }); function readLine() { return inputString[currentLine++]; } // Complete the minimumBribes function below. function minimumBribes(q) { } function main() { const t = parseInt(readLine(), 10); for (let tItr = 0; tItr < t; tItr++) { const n = parseInt(readLine(), 10); const q = readLine().split(' ').map(qTemp => parseInt(qTemp, 10)); minimumBribes(q); } } Nhiều biến trong code trên không hề dễ hiểu, 'use strict'; process.stdin.resume(); process.stdin.setEncoding('utf-8'); let inputString = ''; let currentLine = 0; process.stdin.on('data', inputStdin => { inputString += inputStdin; }); process.stdin.on('end', _ => { inputString = inputString.replace(/\s*$/, '') .split('\n') .map(str => str.replace(/\s*$/, '')); main(); }); function readLine() { return inputString[currentLine++]; } // Complete the minimumBribes function below. function minimumBribes(q) { } function main() { const t = parseInt(readLine(), 10); for (let tItr = 0; tItr < t; tItr++) { const n = parseInt(readLine(), 10); const q = readLine().split(' ').map(qTemp => parseInt(qTemp, 10)); minimumBribes(q); } }0 là gì, 'use strict'; process.stdin.resume(); process.stdin.setEncoding('utf-8'); let inputString = ''; let currentLine = 0; process.stdin.on('data', inputStdin => { inputString += inputStdin; }); process.stdin.on('end', _ => { inputString = inputString.replace(/\s*$/, '') .split('\n') .map(str => str.replace(/\s*$/, '')); main(); }); function readLine() { return inputString[currentLine++]; } // Complete the minimumBribes function below. function minimumBribes(q) { } function main() { const t = parseInt(readLine(), 10); for (let tItr = 0; tItr < t; tItr++) { const n = parseInt(readLine(), 10); const q = readLine().split(' ').map(qTemp => parseInt(qTemp, 10)); minimumBribes(q); } }1 là gì… Mục đích chính mà tác giả muốn nói ở đây chỉ là hãy đặt tên biến cho rõ ràng, hãy viết code sao cho ai mới đọc cũng có thể mường tượng được hàm này làm gì, biến này là cái gì mà thôi. Vì sao cần phải như vậy? Viết code là dành cho con ngườiBạn có thể nghĩ rằng code dành cho máy tính. Không phải đâu. Code dành cho con người. Nếu nó dành riêng cho máy tính, chúng ta không cần ngôn ngữ cấp cao như Javascript hay Python. Hãy ghi nhớ điều này khi bạn viết code: Viết làm sao để người khác đọc code bạn viết mà họ hiểu được. Các tên biến, tham số và hàm nên chứa càng nhiều ngữ cảnh càng tốt để giúp người đọc hiểu những gì họ đã đọc. 'use strict'; process.stdin.resume(); process.stdin.setEncoding('utf-8'); let inputString = ''; let currentLine = 0; process.stdin.on('data', inputStdin => { inputString += inputStdin; }); process.stdin.on('end', _ => { inputString = inputString.replace(/\s*$/, '') .split('\n') .map(str => str.replace(/\s*$/, '')); main(); }); function readLine() { return inputString[currentLine++]; } // Complete the minimumBribes function below. function minimumBribes(q) { } function main() { const t = parseInt(readLine(), 10); for (let tItr = 0; tItr < t; tItr++) { const n = parseInt(readLine(), 10); const q = readLine().split(' ').map(qTemp => parseInt(qTemp, 10)); minimumBribes(q); } }4 thậm chí còn tốt hơn (nếu bạn mong đợi phép đo được tính bằng inch). Nếu code thay đổi, hãy đảm bảo bạn cập nhật các tên đã đặt để phản ánh những gì chúng đại diện. Vì HackerRank là một công ty lớn, có uy tín, nên việc bạn có code được đánh giá tốt trên nền tảng này cũng khiến các nhà tuyển dụng chú ý hơn. Chỉ là, khi bạn thực hành trên HackerRank, hãy rèn cho mình thói quen tái cấu trúc những cái tên vô nghĩa khủng khiếp thành một cái tên có thể truyền đạt ý nghĩa và bối cảnh cần thiết để đọc code. Khi bạn làm việc với các dự án bên ngoài nền tảng, đừng để cho việc đặt tên tối nghĩa làm hại code của bạn và mang lại cho bạn danh tiếng là một dev viết code không thể đọc nổi. Bằng cách luôn tâm niệm rằng viết code là để cho người đến sau bạn có thể đọc, bạn không chỉ tạo sự dễ dàng cho các nhà phát triển khác làm việc với bạn mà còn khiến cho khách hàng muốn thuê lại bạn và giới thiệu bạn với các công ty khác cần bạn giúp đỡ. Có một bình luận vui dưới bài rằng: Khi bước chân vào nghề tôi đã được bảo rằng: “code làm sao để gã sau vào có thể đọc hiểu” và “hãy tưởng tượng người kế thừa đống code của bạn là một gã to cao, nóng tính, biết rõ bạn đang ở đâu” (Nếu hắn đọc không hiểu sẽ tìm đến nhà và cho bạn một trận – người dịch). Một số lưu ý tổng quan cho các bạn mới gia nhập HackerRankTrong tương lai sẽ có không ít các công ty công nghệ tiến hành ứng dụng HackerRank như một bước để đánh giá trong quy trình tuyển ứng viên IT, thì đừng quên lưu ý một số mẹo nhở dưới đây khi bắt tay vào thử HackerRank:
TopDev tổng hợp |