News

'Acropolis' Project Speeds Smart Client Dev

Microsoft's 'Acropolis' aims to speed up smart client development.

The software industry has for decades dreamed of an application development platform that would allow programmers to quickly assemble software by snapping together blocks of stock code like Legos.

The goals of the Microsoft Windows client development platform project, code-named "Acropolis," may not be quite that ambitious, but it does aim to speed up and simplify the process through a set of templates and pre-written code modules for building .NET apps. Once dev shops have coded custom modules for one line-of-business app, the theory goes, those modules could then be easily plugged into other apps.

Building Blocks
Acropolis builds upon Microsoft's Smart Client Software Factory/Composite UI Block (SCSF/CAB) project and will bring full support for Windows Presentation Foundation (WPF) to the modular dev platform for the first time, the company says.

"Our goal is to allow you to focus your coding efforts on your business logic or business problem and not have to code up your applications plumbing," Microsoft Solution Architect David Hill writes on his blog.

Developer Billy Hollis, a Microsoft MVP and .NET consultant, says the unfamiliar organizing principles of module-based development platforms such as CAB and Acropolis can be tough for traditional programmers to master, but the investment in time makes sense for enterprise dev shops building large internal apps such as call center software. He characterizes Acropolis as a kind of portal through which developers can organize blocks of code into an application.

"It handles the security aspect and organizes the user navigation and makes sure the application has a graceful shut down," Hollis says.

The first community technology preview (CTP) of Acropolis was released last month to start generating feedback, but the project team warns developers not to expect too much in the way of stock code blocks from this fledgling version. Most of the first year of work was spent building the underlying framework. Microsoft plans to release additional CTPs over the summer in the hopes of approaching a beta release by the end of the year.

Smart Clients Live On
While some would question the wisdom of laboring over a new platform for developing thick-client apps at a time when such apps appear in danger of being dislodged by the growth of rich Internet applications (RIAs), Microsoft says Acropolis is designed for the development of utility enterprise apps with no need of RIA flash-such as sales automation, customer care and inventory management programs.

Hollis agrees: "There's definitely still a place in the industry for smart clients, and therefore," he says, "there's a place for something to help organize them."
comments powered by Disqus

Featured

  • Creating Reactive Applications in .NET

    In modern applications, data is being retrieved in asynchronous, real-time streams, as traditional pull requests where the clients asks for data from the server are becoming a thing of the past.

  • AI for GitHub Collaboration? Maybe Not So Much

    No doubt GitHub Copilot has been a boon for developers, but AI might not be the best tool for collaboration, according to developers weighing in on a recent social media post from the GitHub team.

  • Visual Studio 2022 Getting VS Code 'Command Palette' Equivalent

    As any Visual Studio Code user knows, the editor's command palette is a powerful tool for getting things done quickly, without having to navigate through menus and dialogs. Now, we learn how an equivalent is coming for Microsoft's flagship Visual Studio IDE, invoked by the same familiar Ctrl+Shift+P keyboard shortcut.

  • .NET 9 Preview 3: 'I've Been Waiting 9 Years for This API!'

    Microsoft's third preview of .NET 9 sees a lot of minor tweaks and fixes with no earth-shaking new functionality, but little things can be important to individual developers.

  • Data Anomaly Detection Using a Neural Autoencoder with C#

    Dr. James McCaffrey of Microsoft Research tackles the process of examining a set of source data to find data items that are different in some way from the majority of the source items.

Subscribe on YouTube