Review sách: The Passionate Programmer – Những điều giúp developer phát triển sự nghiệp

Sau một loạt những bài viết về technical khô khan, hôm nay mình sẽ đổi gió bằng 1 bài review sách. Đây là một cuốn sách nói về những điều developer cần làm để phát triển bản thân và sự nghiệp, đúng với tôn chỉ của blog mình (Lập trình viên cần biết nhiều điều hơn ngoài code). Bài này mình dùng giọng văn nhẹ nhàng hài hước nhé, con người thật của mình ngoài đời cũng nhẹ nhàng hài hước như vậy =)).

Continue reading Review sách: The Passionate Programmer – Những điều giúp developer phát triển sự nghiệp

Mẹo vặt trong Visual Studio – Liệu bạn đã biết rõ IDE của mình chưa?

Trong máy lập trình viên nào cũng có 2 thứ quan trọng: 1 là trình duyệt web để đọc webtretho và đọc vozforum (Nhầm, để google khi bí và stackoverflow), 2 là cái IDE để bật lên mỗi khi thấy manager hoặc team leader đi ngang qua (Nhầm, để code). Continue reading Mẹo vặt trong Visual Studio – Liệu bạn đã biết rõ IDE của mình chưa?

Series C# hay ho: IEnumerable và yield, tưởng đơn giản mà lắm thứ phải bàn

Khái niệm IEnumerable thì chắc cũng có kha khá người biết, khi ta muốn duyệt tất cả các phần tử trong 1 danh sách, ta thường dùng hàm foreach như sau.

foreach(Student student in students) {}

Các kiểu Collection trong C# như List, ArrayList, Dictionary v…v đều implement interface IEnumerable, do đó ta có thể sử dụng foreach để duyệt.

Continue reading Series C# hay ho: IEnumerable và yield, tưởng đơn giản mà lắm thứ phải bàn

Series C# hay ho: Generic là cái thứ chi chi

Generic là một vị anh hùng thầm lặng trong C#.NET (Dân gian còn gọi là anh hùng núp). Generic 1 trong “5 anh em siêu nhân” cấu thành LINQ (4 người còn lại là: Extension method, Delegate, Lambda Expression và yield). Anh núp trong 50% những dòng code chúng ta viết, đến nỗi chúng ta dùng 1 cách vô thức, không biết đến sự tồn tại hay tên gọi của anh.

pr-2

Mình viết bài này nhằm vinh danh “anh hùng thầm lặng” Generic, cũng như hướng dẫn các bạn cách tạo, sử dụng generic class và generic method.
Continue reading Series C# hay ho: Generic là cái thứ chi chi

Series C# hay ho: Lambda Expression

1. Ôn lại khái niệm Delegate

Các bạn vui lòng đọc lại bài trước để nhớ lại các khái niệm về delegate ở đây: Series C# hay ho: Callback trong C# – Delegate, Action, Predicate, Func

Như đã nói ở bài trước, delegate là kiểu dữ liệu để trỏ tới 1 function, do đó khi gán giá trị cho delegate, ta phải gán 1 function vào, như ví dụ dưới đây:

public delegate void TangQuaDelegate(string qua);

public void tangQua(string qua) {
   Console.Write("Da tang " + qua);
}

//Khi sử dụng:
TangQuaDelegate dlg = tangQua;
//Truyền function vào, không phải thực thi function nên ko có dấu ()

Continue reading Series C# hay ho: Lambda Expression

Series C# hay ho: Callback trong C# – Delegate, Action, Predicate, Func

1. Nhắc lại về khái niệm callback

Nếu chưa có khái niệm rõ ràng về callback, các bạn nên đọc bài viết về Callback trong javascript mà mình đã viết.

Trong javascript, để callback, ta chỉ cần truyền 1 function vào như 1 parameter như sau:


function tangQua(qua) {
   return console.log("Đã tặng " + qua);  
}

function oNha(vo, tangQua){
   var qua = "Quà đã nhận";
   tangQua(qua);
}

Continue reading Series C# hay ho: Callback trong C# – Delegate, Action, Predicate, Func

Callback trong javascript

Callback là một khái niệm không mới. Tuy nhiên, nó là một trong những khái niệm khá lằng ngoằng và dễ nhầm lẫn trong lập trình. Với 1 số bạn có basic về C++, Java hay C#, ta thường biết đến callback qua khái niệm delegate (con trỏ hàm).

Bài viết đầu tiên, mình xin giới thiệu callback trong javascript. Lý do chọn javascript là vì Callback trong javascript là đơn giản, dễ hiểu nhất. Bài viết nhắm tới đối tượng là các bạn beginner nên mình sẽ cố gắng viết đơn giản nhất có thể.

Continue reading Callback trong javascript

Viết và chia sẻ code online với fiddle

Trước khi giới thiệu fiddle là gì, mình xin kể các bạn nghe 1 câu chuyện “có thật” sau. Một hôm nọ, khi mình đang ở công ty, bỗng nhận được mes của thằng bạn.

  • Thằng bạn: Ê mày, cái css của tao bị sao ấy, chỉnh lại giùm tao với. Cái jquery cũng ko chạy luôn, bấm nút xong nó ko ra gì hết. Team viewer giúp tao phát
  • Mình: Máy tao cty ko cài team viewer được, quăng file qua đây.
  • Thằng bạn: *Hì hục send file*
  • Mình: *Mở file lên*, độc mỗi 1 file html, ko css js gì sất, nhắn lại: Có mỗi file html, sao chạy?
  • Thằng bạn: *Hì hục zip folder, send lại*
  • Mình: *Hì hục tải về, giải nén. Fix lỗi, send lại*. Xong rồi đó.
  • Thằng bạn: *Hì hục tải về, giải nén. Test* Ủa, mày sửa chỗ nào vậy
  • Mình: …….

Continue reading Viết và chia sẻ code online với fiddle

Short-circuit evaluation : Đoản mạch và chập điện

Bài viết hôm nay sẽ nhắc lại khái niệm “đoản mạch” của biểu thức logic trong lập trình. Mình dùng từ “nhắc lại” chứ không dùng từ “giới thiệu”, vì đây là điều ai cũng được học trong quá trình học, và 90% đều không áp dụng trong quá trình lập trình. (Số liệu thật đấy nhé, không chém đâu).

Continue reading Short-circuit evaluation : Đoản mạch và chập điện

Series C# hay ho: Những điều thú vị trong C# (Phần 2)

Chào mừng các bạn đã quay lại với phần 2 bài viết Những điều thú vị trong C#. Bạn có thể xem lại phần 1 ở đây:

https://toidicodedao.wordpress.com/2015/01/22/series-c-hay-ho-nhung-dieu-thu-vi-trong-c-phan-1/

Series C# hay ho là một series dài kì, giới thiệu những điều “hay ho” của C#. Đây chỉ là phần 2 của bài viết thôi, không phải của toàn bộ series đâu nhé.

Continue reading Series C# hay ho: Những điều thú vị trong C# (Phần 2)

Lập trình viên giỏi không phải chỉ biết code