Archive for the ‘Development’ Category
Posted by jpluimers on 2012/05/30
Delphi seemingly makes the distinction between reference and value types disappear, especially because it hides the ^derefererncing operator for most usages:
- there is no ^ dereferencing operator when following “class” type object instances, “interface” references and “object” type object instances, strings, open arrays and dynamic arrays: the dereferencing is implicit
- usually you do not need the ^ dereferencing operator when
Rudy Velthuis wrote a great article on pointers in general. Though it was in the Delphi 2009 timeframe, almost everything is very valid. A few things are missing, some additions are below.
I’m not going into deep detail here right now, just a few notes to get people interested going.
Hopefully I will some time in the future to either go into more detail, or point to articles that do.
- “object” style object instances.
Those have been deprecated since Delphi 1 (which introduced “class” style objects), but there are still libraries that use them, and (almost unbeleivable): they are supported in Delphi x64
- anonymous method references
- Events (method references) aka the “procedure … of object”/”function … of object”
are implemented using the underlying TMethod type from the System unit
always use the “Assigned” method to check if both the Data and Method field are non-nil
Even with those additions to Rudy’s list, I’m not 100% sure everything is complete now (:
–jeroen
via: delphi – Why does TValue.Make require a pointer to an object reference? – Stack Overflow.
Posted in Delphi, Development, Software Development | 4 Comments »
Posted by jpluimers on 2012/05/29
Just a few notes on things I told Delphi cross development students over the last nine months or so.
For Mac OS X apps:
- The Platform Assistant Server that ships with Delphi XE2
For iOS apps:
Steps:
- Become a registered Apple Developer
- Download and install xCode 4 when you run on OS X 10.7 Lion or higher, or
Download and install xCode 3 when you run on OS X 10.6 Leopard
- Download and install FreePascal 2.4.4
xCode includes the iOS SDK
–jeroen
via: Developer Tools Overview – Apple Developer.
Posted in Delphi, Delphi XE2, Development, Software Development, xCode/Mac/iPad/iPhone/iOS/cocoa | 1 Comment »
Posted by jpluimers on 2012/05/28
Electric Imp – that wants to power The Internet of Things using imps – is introducing some really interesting hardware, one of the devevelopment kits combining Arduino and Imp on one board:
Duino: Arduino, with Imp
Featuring an ATMEGA328 processor, this board is compatible with the Arduino Uno but instead of having a USB-serial port on it, it has an Imp socket. You can use a modified version of the Arduino IDE to update the ATMEGA code from anywhere in the world when an Imp is plugged in, and use simple serial commands in your Arduino programs to control other Imp devices.
The ATMEGA will operate standalone when no imp card is inserted.
Dimensions: 72mm x 54mm x 14mm
Power supply: USB Mini-B socket (5v) or 2.1mm barrel jack (7-12v)
Price: $20
Some must read links:
–jeroen
via: electric imp – developer kits.
Posted in Arduino, Hardware Development, Hardware Interfacing, USB | 2 Comments »
Posted by jpluimers on 2012/05/24
In the previous post, you saw some XPath to find the ProviderManifestToken attribute in an .edmx file.
Writing XPath queries can be quite consuming, so it is nice of you can test it somewhere on-line.
Out of the on-line XPath testers, these two worked best:
Both of them support namespaces, including these XPath functions: local-name and namespace-uri.
These failed:
If you have more on-line tools that work: please let me know!
Edit (20120524T0930):
Danny Thorpe tweeted an interesting comment:
@jpluimers If you’re compiling XPath support, make note of whether it’s XPATH 1.0 or 2.0. I think .NET only implements XPATH 1.0
Indeed, .NET only supports XPath 1.0, and worse, .NET 4 introduced a couple of issues with XSLT (see XPath and XSLT 2.0 for .NET? – Stack Overflow).
Luckily there are some goot XPath 2.0 libraries for .NET (see XPath 2.0 Libraries for .Net – Stack Overflow).
–jeroen
via: XPath tools on not-another-blog
Posted in Development, Software Development, XML, XML/XSD, XPath | Leave a Comment »
Posted by jpluimers on 2012/05/23
Yes. Dorothy. There are people using the ADO .NET Entity Framework with SQL Server 2000 in parallel of moving towards a more modern Microsoft SQL Server version.
Entity Framework is lovely for developing data-centric applications.
By default, Visual Studio 2010 will target SQL Server 2008 as a database. That is fine, but it is kind of invisible it does: there is no property or dialog where you can change this.
What you have to change in order to have the Entity Framework send SQL Server 2000 compatible queries is to:
- Right click your .edmx file
- Choose “Open with”
- Choose the “XML (text) editor”
- Find the ProviderManifestToken attribute
- Change the value (usually from “2008”) into “2000”
- Save the .edmx file
- Build and run your application
A few caveats:
Read the rest of this entry »
Posted in .NET, .NET ORM, C#, C# 2.0, C# 3.0, C# 4.0, Development, EF Entity Framework, Software Development, SQL Server, SQL Server 2000, SQL Server 2005, SQL Server 2008, SQL Server 2008 R2, SQL Server 2012 | Leave a Comment »
Posted by jpluimers on 2012/05/22
Raymond Chen:
what if you don’t want the fault-tolerant heap? For example, during program development, you probably want to disable the fault-tolerant heap for your program: If the program is crashing, then it should crash so you can debug it!
–jeroen
via: How do I disable the fault-tolerant heap? – The Old New Thing – Site Home – MSDN Blogs.
Posted in Development, Software Development | Leave a Comment »
Posted by jpluimers on 2012/05/17
When trying to dissect .NET 1.1 web services from their .asmx and WSDL, you need some tooling.
You’d think the WCF Test Client works, but it only partially generates the calls; it gets the methods OK, but not the parameters.
Importing the .NET WebService in Visual Studio is another option, but not for a “quick play around with the calls”.
For that, Soap UI seems a good option.
If you know better tools, please let me know in the comments.
It works, and when you get it to work it is dead slow (it keeps one core running at 50%).
Getting it to work gives many people this kind of error message: Read the rest of this entry »
Posted in .NET, C#, Development, SOAP/WebServices, Software Development | Leave a Comment »
Posted by jpluimers on 2012/05/16
As a Delphi user, I’m missing the “Reverse Assignment” feature in the Visual Studio version of CodeRush.
Since CodeRush is very extendable (Mark is still explaining to people how the idea for that came from Delphi Packages back in the mid 90s), you can add this one yourself, as the a answer to this DevExpress support issue shows:
Q:
Is there a quick way to reverse the assignment in CodeRush? For example:
FROM:
Field[“test1”] = edTest1.Value;
Field[“test2”] = edTest2.Value;
TO:
edTest1.Value = Field[“test1”];
edTest2.Value = Field[“test2”];
I know Delphi had this capability in its refactoring, does CodeRush for Visual Studio?
Thanks
Daniel Schipper
Read the rest of this entry »
Posted in .NET, C#, C# 2.0, C# 3.0, C# 4.0, Development, Software Development, Visual Studio 2005, Visual Studio 2008, Visual Studio 2010, Visual Studio and tools | Leave a Comment »
Posted by jpluimers on 2012/05/15
(Thanks to a “Missed Post” problem on WordPress.com, this one didn’t get posted on the scheduled date. Sorry for any inconvenience)
One of the next steps in the automated build process I’m setting up is increasing AssemblyVersion values after succesful builds.
It is is in a CCnet / TFS2010 / VS2010 environment.
Some links:
–jeroen
via: change assemblyversion during checkin ccnet – Google Search.
Posted in .NET, C#, Continuous Integration, CruiseControl.net, Development, Missed Schedule, SocialMedia, Software Development, Source Code Management, TFS (Team Foundation System), WordPress | Leave a Comment »
Posted by jpluimers on 2012/05/15
When in a DTAP environment, you cannot always have complete clean boundaries. Issues in production don’t reproduce in acceptance, you cannot develop in production, etc.
So sometimes you have to simulate or connect to Test or Acceptance Database Servers from a Develop workstation.
There it can get hairy to keep track of which applications connect to which database server.
That’s where the below batch file comes in handy: it scans your systems on connections to common TCP ports used by SQL server, then for each connection give you some process details (or – if you add a commandline parameter – all details that TLINK can get).
The batch file uses the built in tools tasklist, netstat, find and sc (the latter to show information on the local running SQL Services).
It also uses TLIST, which can be a bit awkward to get.
Read the rest of this entry »
Posted in .NET, Batch-Files, CSV, Database Development, Development, Scripting, Software Development, SQL, SQL Server, SQL Server 2000, SQL Server 2005, SQL Server 2008, SQL Server 2008 R2, SQL Server 2012, SQL Server 7 | Leave a Comment »