Ray Tomlinson - Huyền thoại công nghệ.

Share:
Ông được biết đến như một huyền thoại về công nghệ, cha đẻ của Email. Ray Tomlinson đã tạo ra cách liên lạc tin nhắn điện tử giữa các máy tính với nhau. Trước đó khi hai người muốn nhắn tin với nhau thì phải cùng sử dụng trên một máy tính. Năm 1971 ông là người đầu tiên gửi email, gửi cho chính mình.
Cha đẻ của Email và ký tự @ - tinhoccoban.net

Tomlinson còn đươc biết đến là người đã chọn biểu tượng @ để ám chỉ rằng một tin nhắn được gửi đến một máy tính khác trong cùng mạng lưới. Ông cũng là người tham gia và chỉ đạo phát triển các tiêu chuẩn cấu trúc trong một email mà bạn vẫn thấy cho đến tận hôm nay như "from" (gửi từ ai), "subject" (tiêu đề) hay các vùng dữ liệu khác. Ray Tomlinson tốt nghiệp cử nhân ngành kỹ sư điện tử từ Học viện Rensselaer Polytechnic vào năm 1963 và có bằng Thạc sỹ MIT hai năm sau đó. 
Ông vừa qua đời ở tuổi 74. Nhưng thế giới sẽ luôn nhớ đến ông với những đóng góp lớn cho ngành công nghệ, làm thay đổi thói quen làm việc hàng ngày của con người. Ray Tomlinson được đưa vào Sảnh Danh vọng Internet hồi năm 2012 nhờ đã "thay đổi cách thức liên lạc của con người cả trong công việc và cuộc sống".
Chúng ta cùng xem lại code gửi email bằng C# dưới đây:
using System;
using
 System.Data;
using
 System.Configuration;
using
 System.Web;
using
 System.Web.Security;
using
 System.Web.UI;
using
 System.Web.UI.WebControls;
using
 System.Web.UI.WebControls.WebParts;
using
 System.Web.UI.HtmlControls;
using
 System.Net.Mail;
namespace
 EmailClass
{
public class Email
{
public string Send_Email(string SendFrom,string SendTo, string Subject,

 string Body)
{
try
{
System.Text.RegularExpressions.Regex regex = new System.Text.RegularExpressions.Regex(@"\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*");

bool result = regex.IsMatch(to);
if (result == false)
{
return "Địa chỉ email không hợp lệ.";
}
else
{System.Net.Mail.SmtpClient smtp = new SmtpClient();
System.Net.Mail.MailMessage msg = new MailMessage(SendFrom,SendTo,Subject,Body);
msg.IsBodyHtml = true;
smtp.Host = "smtp.gmail.com";//Sử dụng SMTP của gmail
smtp.Send(msg);
return "Email đã được gửi đến: " + SendTo + ".";
}
}
catch
{
return "";
}
}


public string Send_Email_With_Attachment(string SendTo, string SendFrom, 
string Subject, string Body, stringAttachmentPath){try
{
System.Text.RegularExpressions.Regex regex = new System.Text.RegularExpressions.Regex(@"\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*");
string from = SendFrom;
string to = SendTo;
string subject = Subject;
string body = Body;

bool result = regex.IsMatch(to);

if (result == false)
{
return "Địa chỉ email không hợp lệ.";
}
else
{
try
{MailMessage em = new MailMessage(from, to,subject, body);Attachment attach = new Attachment(AttachmentPath);
em.Attachments.Add(attach);
em.Bcc.Add(from); 
System.Net.Mail.SmtpClient smtp = new SmtpClient();smtp.Host = "smtp.gmail.com";//Ví dụ xử dụng SMTP của gmail
smtp.Send(em); 
return "";
}
catch (Exception ex)
{
return ex.Message;
}
}
}

catch (Exception ex)
{
return ex.Message;
}
}

public string Send_Email_With_BCC_Attachment(string SendTo, string SendBCC, 
string SendFrom, string Subject, stringBody, string AttachmentPath)
try
{
System.Text.RegularExpressions.Regex regex = new System.Text.RegularExpressions.Regex(@"\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*");
string from = SendFrom;
string to = SendTo; //Danh sách email được ngăn cách nhau bởi dấu ";"
string subject = Subject;
string body = Body;
string bcc = SendBCC; 

bool result = true;
String[] ALL_EMAILS = to.Split(';');

foreach (string emailaddress in ALL_EMAILS)
{
result = regex.IsMatch(emailaddress);
if (result == false)
{
return"Địa chỉ email không hợp lệ.";
}
}
if (result == true)
{
try
{
MailMessage em = new MailMessage(from, to, subject, body);

Attachment attach = new Attachment(AttachmentPath);em.Attachments.Add(attach);
em.Bcc.Add(bcc);

System.Net.Mail.SmtpClient smtp = new SmtpClient();
smtp.Host = "smtp.gmail.com";//Ví dụ xử dụng SMTP của gmail
smtp.Send(em);

return "";
}
catch (Exception ex)
{
return ex.Message;
}
}
else
{
return "";
}
}
catch (Exception ex)
{
return ex.Message;
}
}
}
}