Download presentation
Presentation is loading. Please wait.
Published byShannon Hart Modified over 8 years ago
1
Good PowerShell EXPAND YOUR POWERSHELL SKILLZ BY KIERAN JACOBSEN
2
Q. What makes a good piece of PowerShell code? Answer: The style of our code, including: Function architecture Naming Conventions Comments Use of Pipeline Error handling
3
Style Guides/conventions Style guide or coding/programming conventions are a set of rules used when writing the source code for a computer program [WikiPedia] Date back to the 1970s Claims to increase readability of and understand-ability of source code, and this reduce the chances of programming errors. Claims to reduce software maintenance costs Software developers all work with guides/conventions We have server naming conventions, account naming conventions, why not scripting conventions? One of the hardest things for any group to develop, agree upon and to stick to
4
Script? Function? CMDLet? Module? Function:Named sections of code CMDLet:Advanced reusable functions Script: Complex problems solved with functions and CMDLets Module:Collections of functions and CMDLets Libraries Configuration Application Compiled Code Development and Distribution
5
Functions and CMDLets First “Think functions not scripts” “Make CMDLets not scripts” Design functions and CMDLets first, then build very simple scripts Functions should do just ONE thing
6
Naming Conventions Functions and Cmdlets - Microsoft verbs Vs Defining your down Singular Nouns Modules Scripts Variables Parameters Case
7
Comment Based Help Provides detailed help information on our own CMDLets Descriptions Examples Additional Information Links/References get-help about_comment_based_help
8
Comments When and where is appropriate Variable declarations Complex IF/For/While/Until conditions Pipelining Input validation Error handling Anything complex Don’t over do comments for simple/obvious lines of code.
9
Handling Errors When to catch errors When to throw errors When to write-error Error Messages Exit codes
10
Bring on the demos!
11
Demo: Get a web page
12
Demo: Reusable Get- WebPage
13
Demo: Getting a file
14
Demo: Reusable get-webfile
15
Demo: Posting Data to a page in a reusable way
16
Demo: A tour of a “Web Functions” module
17
PushOver.net Provides push notification support for Android and iOS Available from App/Play Store Applications wishing to send notifications, simply post to API web interface or via Email Ability to provide high, normal and low priority notifications Ability to include a URL Alternatives are out there
18
Demo: PushOver Notifications
19
Demo: SysInternals Script
20
Demo: Chocolatey
21
Questions? Website: http://aperturescience.suhttp://aperturescience.su Twitter: @kjacobsen EmailKieran@thekgb.suKieran@thekgb.su GitHub Projects WebFunctions: http://bit.ly/WebFunctionshttp://bit.ly/WebFunctions PushOverPS:http://bit.ly/PSPushOverhttp://bit.ly/PSPushOver
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.