Category Archives: Best Practices / 最佳實踐方法

C# check if String is null or empty – Learning from Code Review

最近的工作主要是做Backend API Library
今日有一個功能..
使用者的input需要輸入一些東西
不能是’ ‘ empty space
所以便要做一些validation 去檢查
以下是我的垃圾寫法

code review 後 同事建議了另一寫法給我
我覺得很好用的 簡單又容易明
Code Review
Silly way to check if string is not null and is not empty

string input = null;

if (input == null || input.Trim() == "")
{
	Console.WriteLine("Input is null or empty");
}
else
{
	Console.WriteLine("Input isvalid");
}
input = " ";
if (input == null || input.Trim() == "")
{
	Console.WriteLine("Input is null or empty");
}
else
{
	Console.WriteLine("Input isvalid");
}

input = " Yeah";
if (input == null || input.Trim() == "")
{
	Console.WriteLine("Input is null or empty");
}
else
{
	Console.WriteLine("Input isvalid");
}



Code Review 後的寫法
用了String.IsNullOrWhiteSpace 來檢查這個variable 有沒有字串

string input = null;

if (String.IsNullOrWhiteSpace(input))
{
	Console.WriteLine("Input is null or empty");
}
else
{
	Console.WriteLine("Input is valid");
}

input = " ";
if (String.IsNullOrWhiteSpace(input))
{
	Console.WriteLine("Input is null or empty");
}
else
{
	Console.WriteLine("Input is valid");
}

input = " Yeah";
if (String.IsNullOrWhiteSpace(input))
{
	Console.WriteLine("Input is null or empty");
}
else
{
	Console.WriteLine("Input is valid");
}



clearer way to check if string is not null and is not empty
Hope you find it useful

Time to learn new stuff Package Manager – Bower / Composer / Nuget/ Gradle – 係時候學下新的東西了 Package Manager -Bower / Composer / Nuget/ Gradle

在數個月前每聽到Package Manger
E.G. Bower /  Composer / Nuget/ Gradle

我都會避免使用的..
因為不太明白他們的概念和使用方法..
所以還是使用一些十分傳統的方法..把LibraryInternetdownload下來
之後放在 相關的資料夾 後再在網頁上或者Visual Studio相加入適當的參考便算數
但當你用耐了和多了Teammate 一起開發時便會發現原來有 dependency的問題

所以一年多前我變得開始使用Visual Studio 中NuGet package manager
他幫我解決了很多的問題從些之後我便是用它來幫助我處理以visual studio開發的方案..
那時還沒有想過原來用其他Command LinePackage Manager
NuGet Package Manager

再對上一次Hackathon比賽中需要使用Android Studio 來開啟一些Sample Code
我嘗試使用那些傳統的方法..Download source code 之後開啟..
但是不成功..
最後其中一個sponsor的開發人員便教我如何使用gradle 便學會了
因為當我一看見這個gradle這個東西是便不懂得應該怎樣辦
因為通常我是在網上下載了程式碼後使用android studio open便可以這次發現我的方法錯了經過他的詳細解釋便學成好了一個新的技術

從此開始便發現雖然我是一個backend developer
但是都需要學習一下怎樣使用package manager
幸好有很多朋友的工作地方是用這些Best Practices
所以他們一早便學會了
現在有什麼不明白也可以向他們請教一下

所以便在這裏想和大家分享怎樣開始使用package manager希望將來有時間整理我的筆記在和大家分享
一起以更有效率..用更好的方法來寫更好更穩定的程式

Have a good day