วันพฤหัสบดีที่ 28 กรกฎาคม พ.ศ. 2559

จาก Python สู่ C# : ลาก่อน Python

สวัสดีครับ หลังจากที่ผมได้เขียน Python มาได้ค่อนข้างจะยาวนาน ผมเริ่มสนใจภาษาอื่น ๆ ที่นอกจาก Python หนึ่งในนั้นคือ C#

ผมเขียนภาษา Python มาเข้าปีที่ 3 (ผมเริ่มเขียน Python พร้อมกับเปิดบล็อกไปด้วย) ผมได้พบปัญหาของ Python มากมายไม่ว่าจะเป็นเรื่องประสิทธิภาพ , คอมไพล์กับโมดูลที่ใช้ภาษาอื่น , ไวยากรณ์ผิด , ช้า และอื่น ๆ ปัญหาเหล่านี้เกิดจาก CPython ถูกเขียนบนภาษา C อีกทอดหนึ่ง และ Python เป็นภาษาชนิด Interpreter ไม่ใช่ภาษาชนิดคอมไพล์ เป็นเหตุผลที่ผมหันมามองภาษาชนิดคอมไพล์แทน Python

ตอนแรกผมได้ลองภาษา D (http://d.wannaphong.com/) ซึ่งตอบโจทย์กับผมได้ค่อนข้างดี แต่ภาษา D เป็นภาษาที่ยังใหม่ จึงมีไลบรารีไม่มาก จึงมามองอีกภาษาหนึ่งคือ C# ซึ่งตอนนั้น ไมโครซอฟท์ประกาศโอเพนซอร์ส .NET (https://www.blognone.com/node/62668) พอดี ผมจึงรอคอยให้ .NET Core พัฒนามาถึง .NET Core 1.0 ผมจึงทำการโหลด .NET Core 1.0 มาติดตั้ง

 เร็ว ๆ นี้พบกับบทความชุด "จาก Python สู่ C#" กันครับ

ชนิดของข้อมูล C#

ภาษา C# มีชนิดของข้อมูลดังนี้
Short Name
.NET Class
Type
Width
Range (bits)
byte
Byte
Unsigned integer
8
0 to 255
sbyte
SByte
Signed integer
8
-128 to 127
int
Int32
Signed integer
32
-2,147,483,648 to 2,147,483,647
uint
UInt32
Unsigned integer
32
0 to 4294967295
short
Int16
Signed integer
16
-32,768 to 32,767
ushort
UInt16
Unsigned integer
16
0 to 65535
long
Int64
Signed integer
64
-9223372036854775808 to 9223372036854775807
ulong
UInt64
Unsigned integer
64
0 to 18446744073709551615
float
Single
Single-precision floating point type
32
-3.402823e38 to 3.402823e38
double
Double
Double-precision floating point type
64
-1.79769313486232e308 to 1.79769313486232e308
char
Char
A single Unicode character
16
Unicode symbols used in text
bool
Boolean
Logical Boolean type
8
True or false
object
Object
Base type of all other types
string
String
A sequence of characters
decimal
Decimal
Precise fractional or integral type that can represent decimal numbers with 29 significant digits
128
±1.0 × 10e−28 to ±7.9 × 10e28
ที่มา : https://msdn.microsoft.com/en-us/library/ms228360(v=vs.90).aspx

วันพุธที่ 27 กรกฎาคม พ.ศ. 2559

C# Keywords

ภาษา C# มี Keywords ดังนี้
abstract
as
base
bool
break
byte
case
catch
char
checked
class
const
continue
decimal
default
delegate
do
double
else
enum
event
explicit
extern
false
finally
fixed
float
for
foreach
goto
if
implicit
in
in (generic modifier)
int
interface
internal
is
lock
long
namespace
new
null
object
operator
out
out (generic modifier)
override
params
private
protected
public
readonly
ref
return
sbyte
sealed
short
sizeof
stackalloc
static
string
struct
switch
this
throw
true
try
typeof
uint
ulong
unchecked
unsafe
ushort
using
virtual
void
volatile
while

ห้ามนำชื่อเหล่านี้ไปใช้ตั้งชื่ปตัวแปรเด็ดขาด เพราะอาจทำให้โปรแกรมทำงานผิดพลาดได้

วันอังคารที่ 26 กรกฎาคม พ.ศ. 2559

.NET รุ่นใหม่ต้อง .NET Core


หลังจากที่ทาง Microsoft ได้ทำการเปิดตัว  .NET Core เมื่อปีก่อน ทำให้กระแสภาษา C# กลับมาอีกครั้ง และทำให้การทำงานข้ามระบบปฎิบัติการ (Cross-platform) ทำได้ดีกว่ากว่าเดิม และไร้รอยต่อมากขึ้น .NET

ในอดีต .NET framework รองรับการทำงานเฉพาะระบบปฎิบัติการ Windows เท่านั้น จึงทำให้ภาษา C# รวมถึง F# ทำงานได้สมบูรณ์เฉพาะบนระบบปฎิบัติการ Windows

การมาของ .NET Core จะช่วยให้ระบบปฎิบัติการอื่น ๆ นอกจากระบบปฎิบัติการ Windows  สามารถทำงานได้อย่างสมบูรณ์

หน้าหลัก .NET Core :  https://www.microsoft.com/net/