Coding For a Living

rss

A place to share and comment about coding for a living.


Glossary: Responsive Web Design Mike McIntyre

clip_image002[4]Responsive Web Design - Is a web design approach aimed at crafting sites to provide an optimal viewing experience—easy reading and navigation with a minimum of resizing, panning, and scrolling—across a wide range of devices (from mobile phones to desktop computer monitors).


Possible Features of C#.6 and VB.12 Mike McIntyre

Below are some features that may be a part of C#.6 and VB.12.  For current information visit Language feature implementation status for Dev14

Feature status as of 10/3/2014:

Feature

Example

C#

VB

Primary constructors

class Point(int x, int y) { … }

No

No

Auto-property initializers

public int X { get; set; } = x;

Done

Exists

Getter-only auto-properties

public int Y { get; } = y;

Done

Done

Ctor assignment to getter-only autoprops

Y = 15

Done

Done

Parameterless struct ctors

Structure S : Sub New() : End Sub : End Structure

Done

Done

Using static members

using System.Console; … Write(4);

Done

Exists

Dictionary initializer

new JObject { ["x"] = 3, ["y"] = 7 }

Done

No

Indexed member initializer

new JObject { $x = 3, $y = 7 }

No

No

Indexed member access

c.$name = c.$first + " " + c.$last;

No

Exists

Declaration expressions

int.TryParse(s, out var x);

No

No

Await in catch/finally

try … catch { await … } finally { await … }

Done

Maybe

Exception filters

catch(E e) if (e.Count > 5) { … }

Done

Exists

Typecase

Select Case o : Case s As String : …

No

Maybe

Guarded cases

Select Case i : Case Is > 0 When i Mod 2 = 0

No

No

Partial modules

Partial Module M1

N/A

Done

Partial interfaces

Partial Interface I1

Exists

Done

Multiline string literals

"HelloWorld"

Exists

Done

Year-first date literals

Dim d = #2014-04-03#

N/A

Done

Binary literals

0b00000100

No

No

Digit separators

0xEF_FF_00_A0

No

No

Line continuation comments

Dim addrs = From c in Customers ' comment

N/A

Done

TypeOf IsNot

If TypeOf x IsNot Customer Then …

N/A

Done

Expression-bodied members

public double Dist => Sqrt(X * X + Y * Y);

Done

No

Event initializers

new Customer { Notify += MyHandler };

No

No

Null propagation

customer?.Orders?[5]?.$price

Done

Planned

Semicolon operator

(var x = Foo(); Write(x); x * x)

No

No

Private protected

private protected string GetId() { … }

No

No

Params IEnumerable

int Avg(params IEnumerable numbers) { … }

Maybe

Maybe

Constructor Inference

new Tuple(3, "three", true);

No

No

String interpolation

"\{p.First} \{p.Last} is \{p.Age} years old."

Planned

Planned

TryCast for nullable

Dim x = TryCast(u, Integer?)

Exists

No

Delegate combination with +

d1 += d2

Exists

No

Implicit implementation

Class C : Implicitly Implements I

Exists

No

nameof operator

string s = nameof(Console.Write);

Done

Planned

Strict modules

Strict Module M

Exists

No

Faster CInt

Dim x = CInt(Math.Truncate(d)) |

Exists

No

#pragma

#Disable Warning BC40008

Done

Done

Checked and Unchecked blocks

Checked : x += 1 : End Checked

Exists

No

Field targets on autoprops

Serializable> Property p As Integer

Maybe

Maybe

If(b,e1,e2) uses type context

Dim x As Integer? = If(b,1,Nothing)

N/A

No


Glossary–Big Ball of Mud Mike McIntyre

clip_image002Big Ball of Mud - A big ball of mud is a software system that lacks a perceivable architecture.


.NET Native for Windows Store apps Mike McIntyre

Windows Store apps that start up to 60% faster and have a smaller memory footprint – that’s what .NET Native is a about.

.NET Native compiles C# to native machine code that performs like C++. You will continue to benefit from the productivity and familiarity of the .NET Framework with the great performance of native code.image

Released in April 2014, you can download the Microsoft.Net Native Developer Preview to get started today.

The developer preview enables building apps for Windows Store on ARM and x64 architectures (stay tuned for x86.) .NET Native will soon enable a consistent and converged experience across devices.

.NET Native continues to provide a first-class .NET developer experience in Visual Studio. You still get a great edit/compile/debug environment with productivity enhancers like Edit and Continue and code refactoring. You continue to upload MSIL app packages to the Windows Store.

Some of the most popular Windows Store apps on Surface devices are already running on .NET Native. This includes applications such as Wordament and Fresh Paint, which are seeing multi-second startup wins.


Create DateTime with Transaction Sql Mike McIntyre

/* Create close cut off date time variable.*/
        DECLARE @CutOffDateTime DATETIME
        SET @CutOffDateTime = CONVERT(DATETIME, CONVERT(NVARCHAR(10),CONVERT(DATE,GETDATE())) + ' 10:10:00.000')


Visual Studio 2014 Updt 3 Released into the Wild Mike McIntyre

Scaffolding

With this update, scaffolding will correctly detect what are the versions of NuGet packages that the project is using. For example, if the project is still using ASP.NET MVC 5.1.2, then scaffolding will use 5.1.2, instead of 5.2.

JSON Editor

Auto formatting is now part of the JSON editor and is turned on by default.

Brace and brackets match highlighting are just like in C# and JavaScript editors now.

Supports more selector patterns

Drag and Drop Magic

Added drag-and-drop of fonts, images and.css files from solution explorer into .css files.

Added support for two-factor authentication in One ASP.NET templates for MVC and Web Forms.

There's more...


What is the Microsoft .NET Compiler Platform? Mike McIntyre

The Microsoft .NET Compiler Platform, better known as Roslyn, consists of two compilers (one for C# and one for Visual Basic) with rich code analysis APIs.

Roslyn provides compilers as services which can be used to create code focused tools and applications. This creates opportunities for innovation in areas such as meta-programming, code generation and transformation, scripting, interactive use of the C# and VB languages, and embedding of C# and VB in domain specific languages.

Roslyn exposes the C# and Visual Basic compiler’s code analysis to you as a consumer by providing an API layer that mirrors a traditional compiler pipeline.

image

Each phase of this pipeline is now a separate component. First the parse phase, where source is tokenized and parsed into syntax that follows the language grammar. Second the declaration phase, where declarations from source and imported metadata are analyzed to form named symbols. Next the bind phase, where identifiers in the code are matched to symbols. Finally, the emit phase, where all the information built up by the compiler is emitted as an assembly.

In April 2014 Roslyn went open source.

Get started with Roslyn


Glossary–Code Refactoring Mike McIntyre

clip_image002Code Refactoring - Code refactoring is a technique from software engineering for restructuring a source code , altering its internal structure without changing its external behavior. More..


Insightful Mike McIntyre

Microsoft Application Insights is a suite of services which helps delivery teams know if their application is available, performing, and giving users features users want.

Application Insights works with services built into the Microsoft .NET Framework, Java, Microsoft Azure services, Web sites, Windows Store applications and Windows Phone 8 applications.

With complete end-to-end monitoring, you can get a true 360-degree picture of your application, not just small pieces of isolated data.

More...


Way Back Machine– Microsoft Announces C# Mike McIntyre

Way back in 2000 Microsoft announced C#, and the rest is history.

Excerpt:image

REDMOND, Wash., June 26, 2000 — Microsoft Corp. today announced Microsoft® image ( "C sharp" ), a modern, object-oriented programming language built from the ground up to exploit the power of XML-based Web services on the .NET platform, which was announced last week at Forum 2000. With its Visual C++® development system heritage, C # will enable millions of C and C++ developers to use existing skills to rapidly build sophisticated XML-based .NET applications. To simplify integration and interoperability, Microsoft is working with ECMA, an international standards body, to create a standard for C # , enabling multiple vendors to deliver the language and supporting tools.

Read the entire announcement