TopDev
Sort by
1 results
HIGHLIGHT COMPANY

Company information

job-imageCông ty TNHH R TECHNOThiết kế, phân tích, lập trình ô tô, cơ khí, máy móc tự động hóa, tàu thuyền, điện tử- điện khí
Thành phố Hồ Chí Minh 100-499
11 Jobs

Related posts

Marketplace Illustration
Nguyên lý SOLID trong Node.js với TypeScript

Bài viết được sự cho phép của tác giả Sơn Dương Với những bạn lập trình Java thì có lẽ biết rất rõ nguyên lý SOLID. Với Java thì SOLID gần như là quy tắc bất di bất dịch mà mọi lập trình viên phải nắm vững. Mình cũng đã có một bài viết về clean code với nguyên lý SOLID.  Các bạn có thể đọc lại nhé. Tuy nhiên, với Node.js hay Javascript nói chúng thì lại rất dễ dãi. Bạn viết code kiểu gì cũng được, bạ đâu viết đấy cũng được và tùy thuộc style code của mỗi người. Chính vì điều này mà Node.js/Javascript cực dễ học. Nhưng vì viết code thoải mái, không có quy tắc sẽ dẫn đến dự án khó maintain, code sẽ rất rối, khó debug… Chính vì vậy, nếu có thể áp dụng được nguyên tắc SOLID cho dự án Node.js thì thật tuyệt. Bài viết này mình sẽ chia sẻ cách thực hiệ [...]

Marketplace Illustration
SOLID – Nguyên tắc 1: Đơn nhiệm – Single Responsibility principle (SRP)

Bài viết gốc được đăng tải tại Vũ Công Tấn Tài Chúng ta ắt hẳn đều đã có kiến thức về lập trình hướng đối tượng, nhưng việc vận dụng nó cách thuần thục và hợp lí thì không phải ai cũng biết. SOLID xuất hiện như là một trong những định hướng giúp các developer thiết kế hệ thống và phát triển phần mềm chất lượng hơn: code chạy tốt và trong sáng, dễ dàng mở rộng, dễ bảo trì trong tương lai, … SOLID là một trong những nguyên lí phát triển phần mềm sẽ được hỏi trong hầu hết các buổi phỏng vấn việc làm, nó cũng là nguyên lí mà tất cả các dev chúng ta nên biết và áp dụng nếu muốn cải thiện kĩ năng của bản thân. SOLID gồm 5 nguyên lí chính: Single Responsibility principle. Open-Closed principle. Liskov substitution principle. Interface segregation principle. Dependency inversion principle. Bạn có thể tìm hiểu tổng quan về SOLID ở  [...]

Marketplace Illustration
SOLID - Đã đến lúc cần thay đổi bản thân

Người viết: Quách Đại Phúc Có thể trong quá trình làm việc với người thông minh chú ý quan sát thì chỉ cần vài tháng, nhưng với những người kém thông minh hơn hay lười hơn thì phải mất cả năm để nhận ra code mình có vấn đề và Bốc mùi đến như thế nào, rõ ràng việc code sạch đẹp, dễ maintain nó cũng như cách sống vậy, có người gọn gàng ngăn nắp, người thì bừa bộn, luộm thuộm (Mình không nói những bạn code không sạch là bừa bộn nhé  cái này chỉ là ví dụ). Mình tự nhận là người khá ngăn nắp nhưng code thì không sạch (chán). Và mình nghĩ cũng đã đến lúc chúng ta cần tự trau chuốt lại cả cách sống và cách code nếu chúng ta còn tiếp tục muốn sống sót được trong cái nghề mà mỗi ngày càng có nhiều người giỏi hơn, thông minh [...]

Marketplace Illustration
SOLID là gì? Áp dụng SOLID để trở thành lập trình viên giỏi

Phần mềm được xem là tốt khi khi nó có kiến trúc tốt. Kiến trúc phần mềm tương tự như móng nhà, móng yếu nhà sẽ không vững. Để viết được phần mềm tốt bạn phải học rất nhiều, điều đầu tiên bạn cần biết là SOLID. SOLID ra đời như thế nào? Lập trình hướng đối tượng (object oriented programming – OOP) là một trong những mô hình lập trình được sử dụng nhiều nhất. Các tính chất đặc biệt khiến việc hướng đối tượng trở nên hiệu quả đó là: Tính trừu tượng (abstraction): Tạo ra các lớp trừu tượng mô hình hoá các đối tượng trong thế giới thực. Tính đóng gói (Encapsulation): Các thực thể của lớp trừu tượng có các giá trị thuộc tính riêng biệt. Tính kế thừa (Inheritance): Các đối tượng có thể dễ dàng kế thừa và mở rộng lẫn nhau. Tính đa hình (Polymorphism): Có thể thực hiện một hành động đơ [...]

Marketplace Illustration
Blockchain cơ bản - Học về Solidity (P2)

Trong bài trước chúng ta đã khởi động bằng một số concept cơ bản của Solidity bằng cách tạo một contract đơn giản và khám phá một số cấu trúc cùng concept đơn giản. Bây giờ chúng ta sẽ tiếp tục bằng một số concept phức tạp hơn. Các Mapping Tiếp nối struct và arrays, chúng ta còn có thể lưu trữ data trên các mapping. Các mapping là nơi chứa key-value. Ví dụ: mapping(uint => string) public keyUintStringValue; mapping(address => uint) public addressToUint; Chúng ta có 2 public mapping. Cái đầu có uint key và string value. Cái thứ 2 có address key và uint value. Addresses Ethereum blockchain được tạo nên từ các address. Mỗi account có một address riêng. Nó có dạng dưới đây: 0x0cE440255306E921F41612C46F1v6df9Cc969183. Mỗi address có một lượng Ether nhất định, là số cryptocurrency được dùng trên blockchain, và có thể cho và nhận Ether từ các address khác. Từ đó tạo một mapping mới cho DeveloperFactory: pragma solidity ^0.4.22; contract DeveloperFactory { event NewDeveloper(uint devId, string name, uint age); uint maxAge = 100; uint minAge = 5; struct Developer { string name; [...]

Marketplace Illustration
Solidity cơ bản - Tạo 1 Contract cơ bản (P1)

<< Solidity là gì? Giới thiệu Solidity là một ngôn ngữ high-level dùng cho ứng dụng vào smart contract. Nó là một ngôn ngữ hướng đối tượng được thiết kế dành riêng cho Ethereum Virtual Machine. Hãy cùng tìm hiểu nó. Let's go!!! Đầu tiên tạo một file Contract.sol Đầu tiên bạn phải xác định phiên bản bạn đang dùng. Đây là info mà compiler cần. pragma solidity ^0.4.22; Mọi code trong Ethereum đều thuộc về một Contract. Hãy tạo một contract và xác định một vài variable trong đó. pragma solidity ^0.4.22; contract DeveloperFactory { // Let's create a Developer! uint dnaDigits = 16; uint ageDigits = 2; } Solidity là một typed language (ngôn ngữ kiểu tĩnh: là những ngôn ngữ mà các variable cần phải định danh trước khi được sử dụng. Có nghĩa là variable cần phải khai báo và khởi tạo trước). Các biến trong đoạn code trên là state variables, các thuộc tính này sẽ được lưu trong contract storage (trong Ethereum Blockchain). uint là đại diện cho kiểu dữ liệu Unsigned Integer (số nguyên không âm), quay trở lại đ [...]

Marketplace Illustration
Solidity là gì? Lập trình Ethereum và Smart contract

Solidity là gì? Solidity là ngôn ngữ lập trình hướng contract, được sử dụng để viết smart contract trong hệ sinh thái Ethereum. Các tài liệu chính về lập trình bằng solidity có thể tìm thấy tại Solidity documentation. Bài viết này được viết theo các feature của phiên bản mới nhất của Solidity 0.4.21 Lập trình Blockchain với Solidity 1. Kiểu dữ liệu bool int/uint (int8-int256/uint8-uint256) (step by 8 bit) address: ~20 byte byte fixed/ufixed: chưa support hoàn toàn enum function type struct mapping: tương tự hashtable. Cấu trúc mapping(_KeyType => _ValueType) với _KeyType có thể là bất kì kiểu gì ngoại trừ mapping, dynamic-sized array, contract, enum, struct. _ValueType có thể là bất kì kiểu dữ liệu nào array: Fixed-sized array: bytesI (với 0 < I <= 32): alias for byte[I], <type>[] Dynamic-sized array: string, bytes, <type>[] 2. Contract Solidity xây dựng xoay quanh thành phần chính là contract. Về cơ bản, contract tương tự class trong OOP với các thuộc tính (state variables) và phương thức (functions). Các khái niệm abstract contract (contract với ít nhất 1 phương [...]