The NeceMoon | All posts tagged 'programming'

How to Track Mysterious Bugs with Visual Studio

by necemon 10. March 2018 08:40
Debugging is the process of finding and resolving defects or problems within the program that prevent correct operation of computer software or a system. Debugging tactics can involve interactive debugging, control flow analysis, unit testing, integration testing, log file analysis, monitoring at the application or system level, memory dumps, and profiling.

Some bugs may be easy to track. I don't want to talk about those. Let's discuss the really mysterious ones.

Like the saying goes, Theory is when one knows everything but nothing works; Practice is when everything works but nobody knows why. Sometimes Theory and Practice go hand in hand: nothing works and nobody knows why. In such cases, it's worth remembering about some effective techniques that often allow us to reach the root of the problem and to display its finer details. Over time, here are the 3 techniques that have been most useful when debugging with Visual Studio: [More]

Tags: , ,

English | Technical

Comment Traquer les Bugs Mystérieux avec Visual Studio

by necemon 10. March 2018 07:56
En informatique, un bug (ou bogue) est un défaut de conception (ou d'exécution) d'un programme informatique (ou d'une application, d'un logiciel, etc.), qui est à l'origine d'un dysfonctionnement.

Un débogueur (ou débugueur, de l'anglais debugger) est un logiciel qui aide un développeur à analyser les bogues d'un programme. Pour cela, il permet d'exécuter le programme pas-à-pas, d'afficher la valeur des variables à tout moment, de mettre en place des points d'arrêt sur des conditions ou sur des lignes du programme. Il s'agit de l'application à la programmation informatique du processus de troubleshooting, c'est a dire, un processus de depannage, de recherche logique et systématique de résolution de problèmes.

Certains bugs sont faciles à traquer. Je ne vais pas m'attarder sur ceux-là. Parlons plutôt de ceux qui sont vraiment mystérieux.

Un vieil adage disait que la Théorie, c'est quand on comprend tout, mais rien ne fonctionne ; la Pratique c'est quand on ne comprend rien, mais tout fonctionne. Mais parfois la Théorie et la Pratique se rencontrent : rien ne fonctionne et personne ne sait pourquoi. Dans ces cas là, il est bon de se rappeler de certaines techniques efficaces qui permettent bien souvent de toucher le fond du probleme, et d'en afficher les détails. Au fil du temps, voici les 3 tactiques qui se sont montrées particulièrement utiles quand il s'agit de déboguer avec Visual Studio: [More]

Tags: , ,

Francais | Technical

Limiting The Execution Of An Action To AJAX Requests Only

by necemon 12. May 2017 22:28
In ASP.NET MVC, we manipulate Views, among other things. Some of these Views represent full pages and some are just page parts. These parts or areas belonging to a view are called partial views, and they are also returned by controller actions. Since these partial views should only be used within a view, the ASP.NET MVC framework allows us to protect any call to these partial actions by decorating them with the ChildActionOnly attribute. This attribute makes sure that the action:
- cannot be used as an entire view and the application developers will always run it using the HtmHelper.Action or HtmlHelper.RenderAction methods.
- has a URL that will not be accessible via the address bar, if a user somehow becomes aware of the existence of this URL.
However, as with any dynamic site, we will have AJAX requests that can also make requests for HTML content without having to load the page completely. This content also represents a part, and when we receive the response from the web server we have to embed this piece of HTML somewhere in the page. The AJAX request sent to the server will certainly invoke a controller action. This action, like those marked with the ChildActionOnly attribute, must have these constraints:
- should only go through AJAX requests.
- inaccessible via the browser address bar.
But the ASP.NET MVC framework does not offer any attributes that allow us to apply these restrictions to an action, but it gives us the tools to create them. [More]

Tags: , , ,

English | Technical

ASP.NET MVC: Avoid Polluting The Model Of The View With Error Messages

by necemon 27. April 2017 22:46
I recently answered a question that came up on the StackOverflow website. The question was whether using the ViewBag dynamic property of the controller to expose the error message was a good practice, as the OP investigations suggested that it was necessary to expose properties from the model.
Obviously it is highly recommended NOT to use the ViewBag property since it does not provide any Strong Typing. If you want to communicate with the view you should always involve a typed model. The suggested solution is therefore legitimate in that respect, however, it is not a good practice when it comes to model error handling in ASP.NET MVC.
The solution for exposing error messages (as in the previous example, which does not use data annotation attributes) derives from the use of the AddModelError method, from the ModelStateDictionary class. We do not need to instantiate this class because a ModelState property containing an instance of this class already exists in the Controller.
Therefore, the right solution is the following: [More]

Tags: , , ,

English | Technical

10 Years of Programming

by necemon 24. December 2016 10:00
I started programming when I was in high school. I learned a few lessons over the past decade, and I thought I would take a moment to gather my thoughts on these things. It took me about ten years and a lot of experimentation to figure out some of this. [More]

Tags: , , ,

Education | English | Technical

10 Ans De Programmation

by necemon 24. December 2016 04:04
J'ai commencé la programmation quand j'étais au lycée. J'ai appris quelques leçons au cours de la dernière décennie, et je me suis dit que je prendrais un moment pour recueillir mes réflexions sur ces sujets. Il m'a fallu environ dix ans et beaucoup d'expérimentation pour assimiler certaines de ces choses. [More]

Tags: , , ,

Education | Francais | Technical

Top 8 Tricks with Xamarin Programming

by necemon 6. November 2016 08:42
If you don't know what Xamarin is, may I suggest that you start by reading my introductory notes before proceeding with this ? For those in the now, let's get into it without further ado. [More]

Tags: , , ,

English | Technical

8 instruments efficaces pour programmeurs Xamarin

by necemon 6. November 2016 07:54
Si tu ne sais pas ce qu'est Xamarin, puis-je suggérer de commencer par lire mon article d'introduction avant de continuer avec celui ci?
Pour ceux qui savent, entrons dans le vif du sujet. [More]

Tags: , , ,

Francais | Technical

The Xamarin Revolution

by necemon 23. September 2016 22:02
Xamarin is a cross-platform development tool. It solves dilemmas many developers face when developing cross-platform apps: separate coding languages and UI paradigms. With Xamarin, you can use C# for iOS, Android, and Universal Windows apps. And with Xamarin Forms, interface design for all three platforms can be accomplished within its XAML-based framework. Here is some documentation I would recommend if you consider getting started with Xamarin. [More]

Tags: , , ,

Education | English | Technical

La Révolution Xamarin

by necemon 23. September 2016 05:51
Xamarin est une technologie qui te permet de concevoir des applications natives pour différentes plateformes mobiles telles que Android, iOS ou encore Windows Phone et cela en n'utilisant qu'un seul langage de programmation, le C#. Voici quelques docs que je peux recommender pour ceux qui pensent a se lancer. [More]

Tags: , , ,

Education | Francais | Technical


Necemon

I am Necemon Yai. I am a Software Engineer and a Digital Artist. Let's keep in touch via Twitter, LinkedIn or Facebook.

Je suis Necemon Yai. Je suis un Ingénieur en Informatique et un Artiste Numérique. Restons en contact via Twitter, LinkedIn ou Facebook.