正如简介里面介绍的一样,作为一名运维人员,你应该懂一门开发语言,那么那么多语言中,为什么选择 C# 呢?首先,工作中用到,如果工作中用不到,等你学完了,前面的也已经开始慢慢忘了。我也曾经考虑过 Python,不过我所知道的,Python 在实际的运维过程中,使用的没有想象的那么多,使用场景也是作为日志分析的工具,做一些文本处理(有可能还有其他的自动化场景,只是我没有遇到,哈哈哈。)。另一个就是随 k8s 一起火起来的 go,也有想过学一些关于 go 的,不过现在工作中有使用 C#,所以就选择了 C#。
既然是 C#,首先考虑的肯定是 VS,我这里使用的是 Visual Studio 2019。
关于软件的安装,我这里就不细说了,和大多数 Windows 软件一样,安装很简单,只是需要从网上下载安装文件,整个过程可能会花费一点时间。
下面就简单介绍一下他的使用:
安装好后,你可以通过点击开始菜单中的 “Visual Studio 2019” 打开 visual studio。
在 C# 中,我们可以创建两种应用程序,一种是和常规编程软件一样,一种纯代码的开发,全程通过堆叠代码编写的应用程序,被称为 Console Application;另一种为图形界面的应用程序,你可以直接通过拖拽按钮的方式,再结合代码程序,构建你的应用程序,这种应用为称为 WPF Application。
与学习所有编程语言一样,首先学习的就是 “Hello World!"。下面我们看一下,怎么让 C# 程序输入“Hello World!":
从开始菜单,点击 Visual Studio 2019, 打开 Visual Studio。然后再右边选择 “Create a new project”;
选择 Console Application,然后点击 “Next”;
在 Project name 文本框中输入项目的名称(文件名);在 Location 文本框中输入文件存储的位置;在 Solution name 文本框中,输入 solution 的名称,关于 solution 的说明,可以点击 Solution name 边上的倒着的感叹号查看。然后点击 “Next”;
选择 Target Framework,选择对应的 .NET 版本,然后点击 “Create”;
其实在 Visual Studio 中,自动帮你写好了 “Hello World!”,现在你不需要知道这些代码的具体的含义,后面都会有说明。
然后点击 Debug > Start debugging, 运行程序,你也可以直接点击你的项目名称(左边有一个三角);
程序会在一个单独的 cmd 窗口中显示输出的结果;
在运行时,如果程序出错,我们可以在下面看到相关报错;现在我们假设忘了写最后一个 “}”,运行程序后,会发现下面有一个红色的 x, 并且边上有一个数字 1, 表示有一个错误,点击这个红色的 x,查看具体的错误内容;
创建 WPF Application 的方式和创建 Console Application 的方式类似:
从开始菜单,点击 Visual Studio 2019, 打开 Visual Studio。然后再右边选择 “Create a new project”,然后,选择 WPF Application,然后点击 “Next”;
在 Project name 文本框中输入项目的名称(文件名);在 Location 文本框中输入文件存储的位置;在 Solution name 文本框中,输入 solution 的名称,关于 solution 的说明,可以点击 Solution name 边上的倒着的感叹号查看。然后点击 “Next”;
选择 Target Framework,选择对应的 .NET 版本,然后点击 “Create”;
窗口被分成上下两格,上面显示了一个空窗口,称为 MainWindow,是程序的窗口;下面的窗口是实际的代码。你可以通过调整下面的代码,来调整窗口的属性。如,调整 Title 的值,将改变窗口的标题名称;调整 Height 的值,可以调整窗口的高;调整 Width 的值,可以调整创建的宽。
点击 Toolbox,在 Common WPF Controls 区域,选中 Button,拖拽 Button 到 MainWindow 上;选中 Button,可以直接窗口上调整 button 的大小,也可以通过修改下面的代码来调整;查看下面的代码窗口,可以看到 Button 相关的代码窗口被选中;
从窗口的左上角,切换到 MainWindow.xaml.cs,修改代码内容:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
namespace WPF_Hello_world
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private void Button_Click(object sender, RoutedEventArgs e)
{
MessageBox.Show("Hello, World!");
}
}
}
返回 MainWindow.xaml, 修改:
<Window x:Class="WPF_Hello_world.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:WPF_Hello_world"
mc:Ignorable="d"
Title="MainWindow" Height="450" Width="800">
<Grid>
<Button Content="Button" Click="Button_Click" HorizontalAlignment="Left" Margin="299,182,0,0" VerticalAlignment="Top" Height="49" Width="121"/>
</Grid>
</Window>
以同样的方式运行代码,会弹出一个图形界面,你可以通过点击 Button,来显示输出;
补充说明:你可以通过选中 Button,然后在右下角的 Properties 窗口中,调整 Button 的属性,具体的每个属性,大家可以自己尝试尝试;
补充说明:C# 中是区分大小写的。
後端部分
C#只有十幾%的市佔率
怎不選超過70%的PHP
難不成你那裏PHP薪水跟台灣一樣相對低?
我是运维,不写专门的软件,我只写自动化工具,目前我运维的环境以 Windows Server 为主,所以就选了 C#。